專利名稱::提供從休眠狀態(tài)瞬時接通恢復(fù)的計算系統(tǒng)節(jié)電方法和裝置的制作方法
技術(shù)領(lǐng)域:
:本發(fā)明一般涉及計算機系統(tǒng)功耗的減少,特別是但不專門涉及為低功耗計算平臺提供從休,犬態(tài)快速十tt的方法和裝置。
背景技術(shù):
:超高的機動性是當(dāng)今個人電腦(PC)的;^l勢。用戶希望許多PC、特別M上型PC具有整天的電池壽*快速響應(yīng)能力。為了延長電池壽命,PC需要積vfe^ii^低功耗的靜止?fàn)顟B(tài),比目前絕大多數(shù)PC更加積4及;l4ii^這種狀態(tài)。今天,大多數(shù)PC4M高細(xì)己置與電源接口(ACPI)來控制它們的功耗。ACPI使操怍系統(tǒng)(OS)能夠控制PC所消耗的電量。對于ACPI,在PC某段時間不活動時,OS能夠使PC進(jìn)入S4(休眠)狀態(tài)或者S3(睡眠)狀態(tài)。PC在S3狀態(tài)下比在S4狀態(tài)下消耗更多的功率。因此,為了延長電池壽命,從而變得^口靈活,希望使PC在較長時間不活動后進(jìn)入S4狀態(tài)。然而,雖然S4狀態(tài)對節(jié)電來i^完美的,但是由于系統(tǒng)上下文被<絲到石腫驅(qū)動器(HDD)(以及從HDD中十tt回讀),它t^h于長等待時間的睡日M大態(tài)。假設(shè)手提PC通常需^f躺微驅(qū)動器(來實現(xiàn)形狀因素與鉢目標(biāo)),這會導(dǎo)致從3-4秒(S3t線)到30多秒(使用微驅(qū)動器的S4恢復(fù))寬變化的恢復(fù)時間。換句話說,雖然S4狀態(tài)比S3狀態(tài)節(jié)省更多的電能,但是它減慢了PC在蘇醒(wakeup)過程中的響應(yīng)時間,i^當(dāng)今的快速計算環(huán)嫂中是不可接受的。因此,希望減少S4的恢復(fù)時間。
發(fā)明內(nèi)容根據(jù)本發(fā)明的第一方面,提供了一種在計算系統(tǒng)進(jìn)入低功率狀態(tài)時將^i諸器內(nèi)容高速緩存到非易失性高速緩存中的方法,包括請4^4者器內(nèi)紹入非易失'^^浙殳備中;產(chǎn)生存儲器內(nèi)容的圖像,所述^f諸器圖像將被寫A5J非易失性^fi射殳備中;to^非易失'^^f浙殳備的^f諸器圖像的寫入;以及將該寫入指引到非易失性高速緩存。才財居本發(fā)明的第二方面,提供了一種計算系統(tǒng)從低功率狀態(tài)恢復(fù)的方法,所#法包括請,i^人非易失'^^射殳備中讀M4者器數(shù)據(jù);##取請求指引到非易失性高速緩存;以及如^4^器數(shù)據(jù)易于利用,則從非易失性高速緩存中讀^f諸器數(shù)據(jù)。根據(jù)本發(fā)明的第三方面,提供了一種當(dāng)計算系^/人低功率狀態(tài)恢復(fù)時從非易失性高速緩存中讀^H諸器數(shù)據(jù)的方法,包括請求從非易失性Wi殳備中讀取一M器數(shù)據(jù)塊,所請求的數(shù)據(jù)塊具有非易失〗生#^射殳備上的開始邏輯塊地址;將讀取請求指引到非易失性高速緩存,所述非易失性高速緩存具有映射表;確定reqLBA是否在^Mt表中;如果reqLBA在ft^t表中,貝'j才財居映射表中的reqLBA和信息來確定所請求的數(shù)據(jù)狄否出S^非易失性高速緩存中;以及如果所請求的數(shù)據(jù)塊出現(xiàn)在非易失性高速緩存中,則從非易失性高速緩存中讀取所請求的數(shù)據(jù)塊。根據(jù)本發(fā)明的第四方面,提供了一種提供從低功率狀態(tài)瞬時接通恢復(fù)的計算系統(tǒng),包括處理器;津^1妾到所*理器的主^^者器;^!妾到所述處理器和主存儲器的非易失^生4^i殳備;以及非易失性高速緩存,在計算系統(tǒng)進(jìn)入低功率狀態(tài)時,把將被寫入到非易失性^fiti殳備中的內(nèi)容高速緩存到主存儲器中,以及在計算系統(tǒng)從低功率狀態(tài)'^l時為主^f諸器提供從非易失'^^^殳備中請求的數(shù)據(jù);其中,在計算系統(tǒng)已ii^低功率狀態(tài)后關(guān)掉處理器和主務(wù)賭器的電源。所公開M的特征和優(yōu)點將從下面對該主題的詳細(xì)描述中變得顯而易見,其中圖1表示一個示例計算系統(tǒng),其中,ACPI可用于功率控制以及休眠恢復(fù)時間可凈皮減少;圖2A和2B表示在計算系纟^iiA^休目^]犬態(tài)時如何^f諸休目^lt據(jù)以及該系M/人休0^1犬態(tài)下'1^1時如何讀取休眠;圖3A和3B表示^JD非易失性高速緩存在PCii^休ElW犬態(tài)時如何存儲休目Wt據(jù),以^PC從休B^l犬態(tài)'tt'ltt時如何讀取休目^lt據(jù);圖4表示一種計算系統(tǒng)的框圖,其中,在系Mii^休E^l犬態(tài)/從休BW犬態(tài)恢復(fù)時非易失性高速緩存可用于^^/讀取休B^t據(jù);8圖5表示當(dāng)計算系統(tǒng)ii^休E^犬態(tài)時^沐m^t據(jù)高速緩存在非易失性高速緩存中的示例過程的^f呈圖;圖6表示當(dāng)計算系^/人休,犬態(tài)'f線時從非易失性高速緩存中讀取休^!封居的示例ii程的^^呈圖;圖7表示當(dāng)計算系統(tǒng)ii^休BW犬態(tài)/從休目^l犬態(tài)'隨時^^到非易失性高速緩存中/從非易失性高速緩存中讀取的示例1"表;圖8表示^^人休目^l犬態(tài)'^l的過程中從非易失性高速緩存中讀取休眠數(shù)據(jù)的示例過程的流程圖;以及圖9表示在從休BW犬態(tài)^1的過程中從非易失性高速緩存中讀取休眠數(shù)據(jù)的示例過程的偽代碼。脅實施方式根據(jù)本申請公開主題的實施例,一種計算系統(tǒng)通過在長的不活動時間后進(jìn)入S4狀態(tài)(而不是S3狀態(tài))來保存電能,還能夠從S4狀態(tài)ii!;i^也恢復(fù)以提供決速響應(yīng)。不是^^木目^fet據(jù)^f諸在HDD中,非易失性高速緩存用于在系統(tǒng)ii^S4狀態(tài)時高速緩^f木目KJL據(jù)。非易失性高速緩存可以是閃存,可庫點婦尋HDD與磁盤控制器相連的總線。^/人S4狀態(tài)'隨時,休眠數(shù)據(jù)可從非易失性高速緩存中讀取,因此可減少恢復(fù)時間,因為非易失性高速緩存的存取等待時間大大地短于HDD的存取等待時間。高速^f棘恢復(fù)過程;tpT按OS透明的方式(例如,通過4^f諸驅(qū)動器和^^的只讀^f諸器(ROM))來執(zhí)行。通過使用有效的'1^1過程可進(jìn)一步減少恢復(fù)時間,該恢復(fù)過程依靠映射表來幫助搜索非易失性高速緩存中所期望的數(shù)據(jù)。此外,非易失性高速緩存還可用作磁盤高速緩存以改進(jìn)輸A/輸出(I/O)性能和卩射^耗。本說明書中提及的所公開iJI的"一個實施例"或"一實施例"是指結(jié)合該實施例描述的特定特征、結(jié)構(gòu)或特性包含在一個或多個所公開M的實施例中。因此,出現(xiàn)在整個說明書不同地方的短語"在一個實施例中"不一定者財旨同一實施例。圖1表示一個示例計算系統(tǒng)100,其中,ACPI可用于功率管理以及可減少S4恢復(fù)時間。計算系統(tǒng)100可包括與系統(tǒng)互連115耦接的一個或多個處理器110。處理器110可具有多處理或許多處理核心(為了描述的簡便,下文中術(shù)語"多核心"將被用于包括多處理核心和許多處理核心)。計算系統(tǒng)100還包括壽竊到系統(tǒng)互連115的芯片組130。芯片組130可包括一個或多個M電路封^il芯片。芯片組130可包括一個或多^S殳^^接口135以支持到和/或從計算系統(tǒng)100的其它部件160(例如,鍵盤、鼠標(biāo)和網(wǎng)絡(luò)接口等)的數(shù)據(jù)傳送。設(shè)備接口135可通迚悉線165與其它部件160l點妄。芯片組130可^I妄到夕H殳部件互連(PCI)總線185。芯片組130可包4緣PCI總線185提供接口的PCI橋145。PCI橋145可提供處理器110以及其它部件160與夕K殳、如^M設(shè)備180之間的數(shù)據(jù)^4圣。雖然未示出,但是其它設(shè)^L可庫^妾到PCI總線185。此外,芯片組130可包^t過^f諸器總線155津^妾到主^t器150的^ft控制器125。主務(wù)賭器150可務(wù)賭由處理器110的多核心或包含在系統(tǒng)中的任何其它設(shè)備執(zhí)行的數(shù)據(jù)和指令序列。^f諸控制器125可響應(yīng)與處理器110的多核心或計算系統(tǒng)100中的其它設(shè)備相關(guān)聯(lián)的存儲事務(wù)來訪問主務(wù)賭器150。在一個實施例中,^i者控制器l'25可^L置在處理器110或一些其它電路中。主^f諸器150可包括^ft^f諸器設(shè)備,它們提供^f諸控制器125能夠從其中讀^l封居和/或?qū)懭霐?shù)據(jù)的可尋it^f諸位置。主務(wù)賭器150可包括一個或多個不同類型的,器設(shè)備,如動態(tài)隨才;L4^4儲器(DRAM)設(shè)備、同步DRAM(SDRAM)設(shè)備、雙數(shù)^it率(DDR)SDRAM設(shè)備或其它的^f諸器^L備。此外,芯片組130可包4誠迚t、線195壽點妄到石tJ:驅(qū)動器(HDD)190(或未在圖中顯示的其它》茲盤設(shè)備)的》茲盤控制器170。磁盤控制器170允許處理器110與HDD190通信。在一些實施例中,磁盤控制器170可被集成到-茲盤驅(qū)動器(例如,HDD190)中??纱嬖诓煌愋偷膌射妄》茲盤控制器170和HDD190的總線,例如,高級技^i^接(ATA)總線和PCIExpress(PCI-E)總線。OS(未圖示)可在處理器110中運行以控制計算系統(tǒng)100的操作。OS可^J]ACPI通過系統(tǒng)中不同的部件來管理功耗。在ACPI下,存在四種睡BW犬態(tài)Sl至S4。將系統(tǒng)帶回正常的蘇醒工作狀態(tài)所需的時間(蘇醒等待時間)對于Sl^J:短,對于S2和S3是短的,而對于S4則不太短。Sl是處理器和隨才iL4旨賭器(RAM)通電時功耗最大的睡目財莫式。S2是比S1更深的睡BW夫態(tài),其中處理器是斷電的。最"fit的睡B^l犬態(tài)是S3和S4。在S3狀態(tài)下,主^f渚器(RAM)150仍然被供電,用戶能夠'fet精確地恢復(fù)#/她停止的工作一在計^4/U人S3回來時的主^^者器內(nèi)^它i^vS3時的相同。S4是《木B^犬態(tài),在itM犬態(tài)下,主務(wù)賭器150的內(nèi)容保存到HDD190中,從而保存了操作系統(tǒng)的狀態(tài)、所有應(yīng)用程序和打開的文件等。該系統(tǒng)在某段不活動時間后手動;M^自動i4i^S3(睡眠)狀態(tài)或者S4(休眠)狀態(tài)。圖2A表示圖1中的計算系統(tǒng)100ii/vS4狀態(tài)時將主^f諸器內(nèi)容高速緩存到石M驅(qū)動器中的過程。當(dāng)系統(tǒng)100在步驟210中敘S4狀態(tài)時,OS指令產(chǎn)生^(諸器150的^f諸器圖像(下文^M皮稱為休HKJ:據(jù)或休BM:件)一旦產(chǎn)生^H諸器圖像,它t^皮寫入HDD190中。圖2A表示系統(tǒng)100從S4狀態(tài)'f嫂的過程。在系統(tǒng)100從S4狀態(tài)'tt時,OS指示對系鄉(xiāng)腿回到它停止的位置必要的所有數(shù)據(jù)從HDD190讀^JiJ存儲器150中。在從S4狀態(tài)'隨時,要讀取的^f諸器數(shù)據(jù)的順序可以與系M^S4狀態(tài)時高速緩存到HDD中的數(shù)據(jù)的順序不同。由于主^f渚器在S4狀態(tài)沒有凈皮通電,因此系統(tǒng)在S4狀態(tài)下tb^S3狀態(tài)下節(jié)省更多的電。但是,由于主^f渚器內(nèi)容需要從石g驅(qū)動器中讀取,因j)^人S4狀態(tài)J^人S3狀態(tài)的'ftt時間長。在^^]微驅(qū)動器時,從S4狀態(tài)的恢復(fù)時間甚至比使用通常的HDD的恢復(fù)時間長。對于超移動PC,希望具有瞬時接通'^1能力,同時還盡可能地節(jié)省功率(從而延長電池壽命)。因此,希望減少超移動PC從S4狀態(tài)的'ltt時間。4N居本申請公開M的一個實施例,非易失性高速緩存(NV高速緩存)可用于對主^f諸器內(nèi)錢行高速緩存。例如,可增加NV高速緩存(未在圖1中顯示),射敲妄到磁盤控制器170以在系統(tǒng)100i^AS4狀態(tài)時將內(nèi)容高速緩存^f諸器150中。在系統(tǒng)100從S4狀態(tài)蘇醒時,經(jīng)高速緩儲的^^者器內(nèi)容可從NV高速緩存中讀取。因為NV高速緩存的存取等待時間短于HDD150的存取等待時間。系統(tǒng)100在^J]NV高速緩存從S4狀態(tài)'ftt時可實現(xiàn)瞬時接通的目的。圖3A和3B分別表示與沒有^j]NV高速緩存的圖2A和2B相比較,<躺了NV高速緩存圖1中系統(tǒng)100敘S4狀態(tài)時如何^H者^f渚器內(nèi)容以及系統(tǒng)100從S4狀態(tài)'l"tt時:W可讀:fil4J諸器內(nèi)容。在圖3A中,當(dāng)系統(tǒng)100在步驟310中進(jìn)入S4狀態(tài)時,OS命令務(wù)賭器150的圖像數(shù)據(jù)產(chǎn)生,并寫入HDD190中。但是,將務(wù)賭器圖像寫入HDD中的請求被^,該##器圖{斜皮指引到NV高速緩存320中。在圖3B中,當(dāng)系統(tǒng)100在步驟330中從S4狀態(tài)'隨時,OS請求經(jīng)高速緩存的數(shù)據(jù)從HDD190讀回到^f諸器150中。但是,該讀取請求被截取,該高速^H諸器數(shù)悟?qū)嶋H上可從NV高速緩存320中讀取。圖4表示計算系統(tǒng)400的框圖,其中,非易失性高速緩存在系纟^AS4狀態(tài)時用于對休目Mt據(jù)進(jìn)行高速緩存以及在系統(tǒng)從S4狀態(tài)恢復(fù)時用于讀^^木目Rit據(jù)。系統(tǒng)400可包括應(yīng)用層、OS層、控制器層和石更件層。應(yīng)用層可包括非緊急的OS服務(wù)禾I^405(例如,數(shù)據(jù)^P分)和應(yīng)用禾1^*410(例如,MP3播放機)。OS層主要包括OS320,它具有若干部分,如OS文件服務(wù)415、OS功率管J劃良務(wù)425、^f諸器驅(qū)動器430、OS/OEM(原4^i殳備制造商)磁盤驅(qū)動器435和OS加載禾辨440??刂茖涌砂╚ft控制器460和》茲盤控制器465。硬件層可包括存儲器475、HDD485和NV高速緩存490,以"^^f渚器總線470和石茲盤總線480。還設(shè)有固件層,它包括MI/O系統(tǒng)(BIOS)和隨機的ROM455。注意這些層為描述的方便而使用,層之間的劃分界線可以文變。OS文件服務(wù)禾誘415提供服務(wù)禾誘給非緊急O(jiān)S月良務(wù)405和應(yīng)用禾誘。例如,OS文件服務(wù)禾1^415處理非緊急O(jiān)S服務(wù)405的非緊急寫入;并有助于周斯性應(yīng)用程序的數(shù)^^取。應(yīng)用層中的部分,如非緊急O(jiān)S服務(wù)405和應(yīng)用程序410不直接處理控制層和硬件層中的部分,而是通過OS部分^i^行處理。例如,應(yīng)用禾踏通過4#器驅(qū)動器430/A^^諸器475中讀取或?qū)懭雱?wù)賭器475中;通過0S/0EM磁盤驅(qū)動器從HDD485中讀取或?qū)懭際DD485中。OS功率管J劃艮務(wù)425可^fMACPI通過系統(tǒng)400中的不同部分來管理功耗。例如,在OS將系統(tǒng)置入休目^l犬態(tài)時,功率管J別良務(wù)425請求產(chǎn)生^f諸器475中內(nèi)容的圖像,并將該圖H^入HDD485中。在完成圖像寫入HDD中后,功率管鄉(xiāng)艮務(wù)425就關(guān)掉^f諸器475和固件層中其它固件部分的電源。OS功率管J劃良務(wù)425分別通過^H諸器驅(qū)動器和OS/OEM磁盤驅(qū)動器來與^^者器和HDD通信。^f諸器驅(qū)動器430和OS/OEM萬茲盤驅(qū)動器435用作OS和控制層之間的接口,并分別實現(xiàn)OS與^i者器475和HDD485之間的^frf可通信。在引"^f木B^R態(tài)或從休^)犬態(tài)'隨時,BIOS引導(dǎo)服務(wù)加^fr者介質(zhì)的第一512字節(jié)。第一512字節(jié)通常包括OS第一級引導(dǎo)加^^/f,它裝載OS第二級加^^亭(圖4中顯示為OS加載禾踏440)。OS第^M口^^字(440)將判定系統(tǒng)是否必須從S4'^1或從S5引導(dǎo)(ACPI斷電狀態(tài))。OS第二Mi/口^^I序與BIOS/隨機ROM(OptionROM)455i工作以判定系統(tǒng)啟動或運行前或者在系統(tǒng)從S4狀態(tài)'ftt時返回到它停止的狀態(tài)之前需要運行什么。^f諸控制器460和磁盤控制器465分別用作務(wù)賭器475和HDD485的OS的石更件方4妄口。^f諸控制器460和磁盤控制器465通常i殳置在芯片《且內(nèi)。但是,在一些計算系統(tǒng)中,可能不是在芯片組中,硬件方^^渚器和磁盤控制器可設(shè)置在^Jf]合適軟件驅(qū)動器在OS與存儲器和HDD之間通信的相關(guān)芯片中。BIOS/隨機ROM455有助于確定系統(tǒng)在OS啟動^it行前做什么。BIOS包括控制基本夕卜設(shè),如鍵盤、鼠標(biāo)、顯示屏、磁盤驅(qū)動器和串行通信等所需的固件代碼。BIOS通常被標(biāo)準(zhǔn)化,特別是對于PC。為了定制BIOS控制的一些功能,可^JI]隨機ROM,它被認(rèn)為是BIOS的擴(kuò)展以支持OEM(原始設(shè)備制造商)特定專有功能。在系統(tǒng)啟動或從S4狀態(tài)恢復(fù)時,BIOS調(diào)用^f諸在隨機ROM中的代碼。因此,如果用戶希望系統(tǒng)從不同于標(biāo)準(zhǔn)啟動過程中啟動,那么用戶可寫入#/她自己的代碼,并將其^"在隨機ROM中。隨機ROM還可包4射方問^"控制器460和磁盤控制器465的專有代碼。才艮據(jù)本申請公開^gl的一個實施例,NV高速緩存490可添加到系統(tǒng)400中。NV高速緩存可津期妄到磁盤總線480并用于在系統(tǒng)進(jìn)入S4狀態(tài)時對存儲器內(nèi)^ii行高速緩存。NV高速緩存可由閃存制成。在系M/人S4狀態(tài)恢復(fù)時,^^者器內(nèi)容(或休目M:件)能夠從NV高速緩存而不是HDD中fel。因為NV高速緩存的存取等待時間比HDD的存取等待時間短,因jH^人NV高速緩存中恢復(fù)務(wù)賭器內(nèi)容能夠顯著地減少恢復(fù)時間,從而為用戶提供瞬時接通或接近瞬時接通的體驗。jHi^卜,NV高速緩存還可用作正常蘇醒工作狀態(tài)下的磁盤高速緩存。作為》茲盤高速緩存,NV高速緩存有助于改進(jìn)系統(tǒng)的I/O性能,并由于磁盤負(fù)^皮較長時間地停jl^走轉(zhuǎn)因此可降低系統(tǒng)的平均功耗。而且,本文公開的主題可擴(kuò)彭iH^)NV高速緩存(如閃存)作為與較f曼的數(shù)據(jù)^^者器結(jié)合的OS和應(yīng)用禾l/f的快速^H諸器。在一個實施例中,NV高速緩存對^i者器內(nèi)^ii行高速緩存以及'ttt存儲器內(nèi)容可全部通過OS來實現(xiàn)。在另一個實施例中,該過程能夠以O(shè)S透明的方式完成。例如,佳月^f諸驅(qū)動器(例如,OS/OEM磁盤驅(qū)動器435)來完成將^f諸器內(nèi)容高速緩儲在NV高速緩存中;^^1隨機ROM中的^M來完錄NV高速緩存中'l^l^f渚器內(nèi)容。雖然圖4中OS/OEM磁盤驅(qū)動器435作為OS的4分示出,但是該驅(qū)動器可用OEM本身的驅(qū)動器替換而不^f^f^阿OS的功能。在以O(shè)S透明的方式實現(xiàn)/f^]NV高速緩存來高速緩#^1務(wù)賭器內(nèi)容時,NV高速緩存需要設(shè)置在某個類型的總線上。例如,OS可以僅一旨目M:件寫Ait常位于特定總線(例如,ATA總線)上的引導(dǎo)驅(qū)動器中。而且OS可以在它高速^^者休目ML件時的階段前關(guān)掉二級悉線(例如,PCI-E總線)。利用NV高速緩存,系統(tǒng)可通艦入S4狀態(tài)較長的非活動時間來節(jié)省大量的功率,同時仍接近于超級移動計算^^斤需的"瞬時接通"能力。圖5是在計算系鄉(xiāng)^vS4狀態(tài)時將^f諸器內(nèi)容高速^^者在非易失性高速務(wù)賭器中的示例過程500的流程圖。在步驟510中,計算系統(tǒng)ii^S4狀態(tài)。在步驟520中,作出^^者器(RAM)內(nèi)紹入HDD中的請求。在步驟530中,產(chǎn)生主^f諸器的內(nèi)容圖像(休BMl件),并準(zhǔn)備寫入HDD中。在沒有NV高速緩存和系統(tǒng)的對應(yīng)變化的前提下,休目ML件將直接寫入HDD中。利用NV高速緩存,在步驟540中0^HDD的寫入。通常從HDD讀取和寫入HDD中是以SCSI請求塊(SRB)的形式,它包括元數(shù)據(jù)(metadate)以及從HDD讀取和寫入HDD中的實際f史據(jù)。除了其它信息,在步驟550中,如絲數(shù)據(jù)塊的NV高速緩存中沒有足夠可用的空間,f脈每次寫入時對數(shù)據(jù)塊產(chǎn)生高速緩存圖像。在步驟560中,高速緩存圖像可寫入NV高速緩存中。寫M'jNV高速援存中的數(shù)據(jù)塊的高速緩存圖像的仍可采用SRB形式,但SRB的元數(shù)據(jù)需要包括NV高速緩存中的數(shù)據(jù)塊的LBA。此外,專用于從HDD讀取和寫入HDD中的信息可以從高速緩存圖像中去除。將HDD上數(shù)據(jù)塊的LBA與NV高速緩存Ji^目同數(shù)據(jù)塊的地iibN)關(guān)聯(lián)的映射表可在將數(shù)據(jù)塊寫入到NV高速緩存中時產(chǎn)生。在完成將務(wù)賭器圖^fNV高速緩存中后或NV高速緩存寫滿時,映射表可寫入到NV高速緩存中。圖7表示映射表的一個示例。在一個實施例中,^f諸器內(nèi)容可在它寫入NV高速緩存中的同時寫入HDD中。寫入NV高速緩存中和寫入HDD中可以并行^^亍以便iiit過將,器內(nèi)紹入HDD中而性能沒有受到損害。在另一個實施例中,存儲器內(nèi)^7v^HDD中可以^L^NV高速緩存中沒有高速緩存圖像可用的足夠空間時才W亍。圖6表示在計算系統(tǒng)從S4狀態(tài)'^l時^f柏R^據(jù)從NV高速緩存中讀回到主務(wù)賭器的示例過程600的流程圖。在步驟610中,系統(tǒng)從S4狀態(tài)恢復(fù)。在步驟620中,使用OS產(chǎn)生將^fi者器數(shù)據(jù)從HDD讀回到主,器中的請求。在步驟630中,該讀取請求可被截取,絲itJ^機ROM中的代碼凈W良務(wù),這可將該讀取請求重定向到NV高速緩存而不是HDD。在步驟640中,隨機ROM中的代碼可以確定被請求的數(shù)據(jù)是否易于在NV高速緩存中利用。如果被請求的數(shù)據(jù)易于在NV高速緩存中利用,那么被請求的數(shù)據(jù)將在步驟650中由NV高速緩存提供;否則,被請求的數(shù)據(jù)將在步驟660中由HDD提供。"口詳細(xì)的'ftt過程的M示例以及它們相應(yīng)的描^圖8和9中示出。圖7表示在計算系^iiXS4狀態(tài)/從S4狀態(tài)+tt時^f諸在非易失性高速緩存中/從非易失性高速緩存中讀取的示例映射表。當(dāng)在系統(tǒng)ii/vS4狀態(tài)時OS請^ft^f諸器內(nèi)^ii行高速緩存時,OS認(rèn)為^i者器內(nèi)割夸被寫入到HDD中,^!史據(jù)片被寫WjHDD內(nèi)的不同地址中。而JL^OS請求經(jīng)高速存儲的存儲器內(nèi)容讀回到主存儲器中時,它認(rèn)為該存儲器內(nèi)容將從HDD中讀取,因此Vl"讀取請求包括HDD中的地AL^4皮請求的數(shù)據(jù)大'J、。因為^f諸器內(nèi)容實際上^H者在NV高速緩存中以及從NV高速緩存中讀取,因此希望具有一個表,該表將OS知道的HDD中的凝:據(jù):h^止映射到NV高速緩存中它們對應(yīng)的iW止。邏輯塊地址(LBA)A^見定^f諸在計算才A^f^i殳備,通常^_二^(諸系統(tǒng),如硬盤中的數(shù)據(jù)塊位置所使用的通用方案。術(shù)語LBA可以是;Wiiil與地ii湘關(guān)的塊。因為LBAi^U:圍繞SCSI(小型計算機系統(tǒng)接口)驅(qū)動器來開發(fā)的,因此LBA經(jīng)常與SCSI請求塊(SRB)—起提及。在LBA方案中,磁盤上的塊用索引進(jìn)行筒單地設(shè)置,第一塊的LBA=0,第4的LBA-1等等。絕大多數(shù)現(xiàn)代計^4幾,特別是PC,支持LBA方案。在OS發(fā)送數(shù)掩清求(或者是寫請求或者是讀請求)給HDD時,該請求通常包括LBA——HDD中數(shù)據(jù)塊的邏輯開始地址,以A^區(qū)數(shù)一一磁盤中數(shù)據(jù)塊的大小。通常在^f諸磁盤術(shù)語中,扇區(qū)還被認(rèn)為是邏輯塊。為了便于描述,在本申請中數(shù)據(jù)塊被認(rèn)為是鄰絲區(qū)的序列。再看圖7,其中表示的映射表700包括至少三列710、720和730。列710包括HDD中的LBA塊,列730包括列710中所示的LBA的NV高速緩存中的映射:^ki止。列720包括扇區(qū)數(shù)(或列710所示的HDD中的LBA塊的大小)。列740示出一些包含在映射表700中的附加信息。注意對于其它信息可以有多個包含M中的附加列。映射表700還包括表示列710中的LBA、列720中的對應(yīng)塊大小和列730中NV高速援存中LBA的映射地址之間關(guān)系的一些示例。例如,HDD中的塊l的LBA可以是A,塊l具有X個扇區(qū);其在NV高速緩存中的岫iit是A,。映射表中的行是條目,映射表中的這些條目可通過HDD中的LBA進(jìn)行排序,通過NV高速緩存中的地址或扇區(qū)數(shù)進(jìn)行映射。為了易于檢索,可對映射表中的條目編制索引(如表700所示)。該映射^A在系統(tǒng)iiAS4狀態(tài)(在主^f諸器的電源關(guān)閉前)時構(gòu)建的。對于下面的描述,為了方便M使用了數(shù)個符號。M地說,reqLBA是請求讀取的數(shù)據(jù)塊的邏輯開始地址;reqLBACount表示準(zhǔn)備從reqLBA開始讀取的扇區(qū)數(shù);以及cacheLBA是NV高速緩存中被請求的數(shù)據(jù)塊的實際邏輯開始i&止。tableLBA[i]是映射表條目中的數(shù)據(jù)塊的邏輯開始;MkJt止;tableLBACount[i]是表條目中的扇區(qū)數(shù);tableLCacheLBA[i]是表條目中映射數(shù)據(jù)塊的邏輯開始地址;其中I是表中的條目索引。差4Ui,tableLBA[i]、tableLBACount[i]和tableLCacheLBA[i]分別對應(yīng)于條目i的列710、720和730中的值。圖8是^^人S4狀態(tài)'ttt的過程中從非易失性高速緩存中讀取休^l史據(jù)的示例過程800的濟(jì)d呈圖。與圖6所示的緣程600相比,過程800可4皮認(rèn)為是特定的實施例。過程800趙臺于步驟805。在步驟810中,扭^^r查以確定reqLBA是否育t^映射表中利用。不是通過整個映射表搜索,通過將reqLBA與映射表中的第一個和最后一個條目進(jìn)行比較們,可進(jìn)行快速檢查。映射表中的條目可按LBA的升序進(jìn)行排列,使得最小編號的LBA作為第一個條目,而最大編號的LBA作為表的M—個條目。如果reqLBA超出映射表的范圍,則在步驟855中可返回值為-1,i!4示0S所請求的塊不在NV高速緩存中;該過禾1^步驟860結(jié)束所請求的塊可以從HDD中讀取。在過程800開始于步驟805時,如果reqLBA'l^f是第一個,那么當(dāng)前的條目索引用映射表中的第一個條目的索引(即,O)iMi行初始化;如果reqLBA不是第一個,那么當(dāng)前的條目索引使用某個條目索引^^行初始化,在該條目處,該過程已經(jīng)停止搜索在前的reqLBA。如#步驟810中reqLBA被確定為處于映射表的范圍內(nèi),那么就通it^步驟815中檢查reqLBA是否在艦表中的當(dāng)前條目中可用,來^l/f^i一步檢查以確定該請求是否在映射表中真正可用。該進(jìn)一步檢查可按循環(huán)線性方式進(jìn)行。該檢查可從其已經(jīng)停止搜索在前的reqLBA處的條目開始搜索。在到達(dá)表中最后條目后,搜索返回第一條目,并繼續(xù)進(jìn)行,直到已經(jīng)停J^叟索在前reqLBA處的條目之前的條目。對于將出現(xiàn)^^條目中的reqLBA,該reqLBA應(yīng)該大于或等于數(shù)據(jù)塊的當(dāng)前表條目的開始地址;(reqLBA+reqLBACount)應(yīng)該小于或等于數(shù)據(jù)塊的表條目的開始:^iil^口上扇區(qū)中表條目的數(shù)據(jù)塊大小。在步驟815中檢查的目的不是要了解是否僅有一部分reqLBA在表條目中可用。在高速緩存過程中,具有連續(xù)LBA的所有數(shù)據(jù)塊進(jìn)行合并,并在^Ut表中僅以一個條目顯示。而且當(dāng)系^/人S4狀態(tài)十tt時,絕大多數(shù)被請求的數(shù)據(jù)塊通常具有連續(xù)的LBA。因此,如果僅有一部分reqLBA在表條目中可用,那么被請求的塊被分離,即,它的"-^分在NV高速緩存中,""^分在HDD中。在分離數(shù)據(jù)塊的情況下,部分從NV高速緩存以及部分/A^茲盤提供該請求tb/A^茲盤提供該請求的成絲高,因為它在提供數(shù)據(jù)塊給OS之前需要多個請求和一個合并。因此,開始于reqLBA的整個塊在表條目中對于被認(rèn)為出效L^4中的reqLBA應(yīng)該是可用的。如果reqLBA不在當(dāng)前條目中,則在步驟820中,當(dāng)前條目索引可用映射表中的下一個條目的索引^i行i議。步驟830確定映射表中^一個條目是否已經(jīng)針對reqLBA進(jìn)^^企查。M條目是否剛被檢查可以通過當(dāng)前條目索引是否等于條目的總凄汰進(jìn)行確定。如果當(dāng)前條目索引等于映射表中條目的總數(shù),那么最后一個條目就剛被檢查過。然后在步驟845中,當(dāng)前條目索引可被重新設(shè)定為映射表中的第一個條目的索引。如果a—個條目i^殳被檢查過,那么在步驟815中針對reqLBA^f企查映射表中的下一個條目。步驟850確定當(dāng)前條目索引是否等于最后一個索引,該M一個索引是該過程已經(jīng)停止搜索在前reqLBA處的條目的索引。如果結(jié)果是"否",則在步驟815中針對reqLBAiM企查映射表中的下一個條目;否則,在步驟855中返回值"-l",它表示reqLBA沒有出J脈映射表中,該it禾l^步,驟860結(jié)束。在步驟815中,一^當(dāng)前條目中發(fā)現(xiàn)reqLBA,NV高速緩存中的reqLBA的開始地址,即cacheLBA,,,脈步驟835中通過將reqLBA與tableLBA[i]的偏差加到tableCacheLBA[i]中進(jìn)^i十算,其中i是當(dāng)前表條目的索引。注意被請求的數(shù)據(jù)塊的開始地址和其在扇區(qū)中的大小可能不總是匹配表條目中數(shù)據(jù)塊的開始地址和其大小。被請求的數(shù)據(jù)塊的開始地址可能與表條目中數(shù)據(jù)塊的開始地址存在偏移量(在扇區(qū)中),該偏移量可在步驟825中進(jìn)行計算。ReqLBA的CacheLBA可在步驟840中返回,該過程在步驟860結(jié)束。如果rcqLBA沒有在^t"表中發(fā)現(xiàn),那么被請求的數(shù)據(jù)塊f^Af茲盤而不是NV高速緩存中讀取。圖9表示^/人S4狀態(tài)'ftt的過程中從非易失性高速緩存中讀取休B緣據(jù)的示例過程的偽代碼900。偽代碼900表示與圖8中所示的過程800相似的過程,il是不言自明的。雖然所公開JJ1的實施例參照圖1-9的步^K^呈圖進(jìn)行了描述,但是本領(lǐng)域的普通技術(shù)人員將會容易地理解實現(xiàn)所公開主題的許多其它方法可以替換使用。例如,可以改變流程圖中步驟4力f亍的順序,和/或改變、省略或組合所描述的步嫩:J敘呈圖中的一些步驟。在前面的描述中,已經(jīng)描述了所公開M的不同方案。為了便于解釋,提出的特定數(shù)字、系統(tǒng)和結(jié)構(gòu)是為了提供對該主題的全面理解。但是,很顯然本領(lǐng)域的技術(shù)人員可以A^/仝開中知道,該M可在沒有這些M細(xì)節(jié)的條件下實施。為了it^/^斤公開的i^變得不清晰,在另一些實例中,7i^口的特征、部件或才^:被省略、簡化、組合或分離。所公開主題的不同實施例可用硬件、固件、軟件或其結(jié)合來實現(xiàn),可以參照或結(jié)合程序碼來進(jìn)#^葛述,程序代碼例如用于才對以、仿真和沒計制造的指令、功能、過程、數(shù)據(jù)結(jié)構(gòu)、邏輯、應(yīng)用程序、設(shè)計表示或格式,這些代碼在由機器訪問時,會引發(fā)機器"^f亍任務(wù),從而限定抽象數(shù)據(jù)類型或^M的硬件上下文,或產(chǎn)生結(jié)果。為了仿真,程序碼可表示^^]硬件描述語言或另一種功能描述語言的硬件,該語言實質(zhì)上提供一種所設(shè)計的硬件被預(yù)期如何執(zhí)行的模型。程序代碼可以是匯編或機器語言,或者是被編輯和/或翁蜂的數(shù)據(jù)。而且,它是本領(lǐng)域中通用的軟件,以一種作為采取4亍動或產(chǎn)生結(jié)果的形式或其它形式存在。這樣的表述僅僅是一種敘述處理系統(tǒng)^^対呈序碼的簡化方式,該處理系統(tǒng)使處理器^/ft^/作或產(chǎn)生結(jié)果。程序4V馬,例如,可以^f諸在易失性和/或非易失'^^諸器中,如^4者設(shè)備和/或相關(guān)的機器可讀或機器可訪問介質(zhì),包括固態(tài)^H者器、石M驅(qū)動器、軟盤、光學(xué)^H渚器、磁帶、閃存、^f浙奉、數(shù)字^!jt、數(shù)字通用盤(DVD)等,以及更加奇特的介質(zhì),如機器可訪問生物,^f^4^f諸器(biologicalstatepreservingstorage)。機器可讀介質(zhì)可包括任何以機器可讀取形M儲、傳輸或接收信息的機構(gòu),該介質(zhì)可包括電、光、聲或其它形式的傳播信號或編碼程序代碼的載波可通過的有形介質(zhì),如天線、光纖維、通信接口等。牙踏^/馬可釆用^^且、串行數(shù)據(jù)、并行數(shù)據(jù)和傳播信號等形式來進(jìn)行傳輸,也可采用壓縮或解密的格式來偵月。程序碼可以在可編程機器上執(zhí)行的程序中實現(xiàn),可編程機器例如移動或靜止計算機、個人數(shù)字助理、機頂盒、蜂窩移動電話和尋呼機,以及其它電子設(shè)備,各包括處理器、處理器可讀的易失性和/或非易失性存儲器,至少一個輸入設(shè)備和/或一個或多個輸出設(shè)備。禾聘碼可以應(yīng)用于使用輸入設(shè)備輸入的數(shù)據(jù)以#1^亍所描述的實施例,并產(chǎn)生輸出信息。該輸出信息可應(yīng)用于一個或多個輸出設(shè)備。本領(lǐng)域的技術(shù)人員會理解到,所公開iJI的實施例可用各種計算系統(tǒng)配置來實施,所述系統(tǒng)包括多處理器或多核處理器系統(tǒng),小型計算機,大型計算才幾,以;^普AiU殷型計算才幾或?qū)嵸|(zhì)上可嵌入到^f可設(shè)備中的處理器。所公開主題的實施例還可以在分布式計算環(huán)境中實施,其中任務(wù)可以由通iiit信網(wǎng)絡(luò)連接的遠(yuǎn)程處理設(shè)備來^^亍。雖然這些#^乍可以按順序過程來描述,但是事實上一些^^乍可以并行、并發(fā)和/或在分布式沐竟中^f亍,其中程序代碼可本^4^^/或由單個或多處理器機器遠(yuǎn)程訪問。此外,在一些實施例中,在不背離所公開JJi的精神的前提下,可對操作的順序進(jìn)行重新排列。程序代碼可通過或結(jié)^^iU空制器來^^J。雖然所7>開的iJI已經(jīng)參考所示的實施例進(jìn)行了描述,但是該描述不應(yīng)認(rèn)為是限制意義的。所示實施例的M變化,以及該,的其它實施例,對于所公開,所屬領(lǐng)域的技術(shù)人員來iJU:顯而易見的,它們都被一見為落所^Hfi^的范圍內(nèi)。權(quán)利要求1.一種在計算系統(tǒng)進(jìn)入低功率狀態(tài)時將存儲器內(nèi)容高速緩存到非易失性高速緩存中的方法,包括請求存儲器內(nèi)容寫入非易失性存儲設(shè)備中;產(chǎn)生存儲器內(nèi)容的圖像,所述存儲器圖像將被寫入到非易失性存儲設(shè)備中;截取對非易失性存儲設(shè)備的存儲器圖像的寫入;以及將該寫入指引到非易失性高速緩存。2.如權(quán)利要求1所述的方法,其中低功率狀態(tài)包括休El^l犬態(tài),所述休目M犬態(tài)包括高細(xì)己置與電源接口規(guī)范下的S4狀態(tài)。3.如權(quán)利要求1所述的方法,其中所述非易失'^^^i殳備包括石嫂驅(qū)動器。4.如權(quán)利要求l所述的方法,還包括確定在包含于各寫入中的數(shù)據(jù)塊的非易失性高速緩存中是否存在足夠的可用空間;及如果在非易失性高速緩存中存在足夠的可用空間,則產(chǎn)生數(shù)據(jù)塊的高i4纟爰存圖^f象;以及將高速緩存圖^f入非易失性高速緩存中。5.如權(quán)利要求4所述的方法,其中,高速緩存圖像包括映射表,所述映射表具有至少一個條目,^^用于一個凄t據(jù)塊,^條目包括非易失'fi4^i殳備中數(shù)據(jù)塊的開始邏輯塊^iit;扇區(qū)中數(shù)據(jù)塊的大?。灰约按疟PLBA的非易失性高速緩存中的映射i&止。6.如權(quán)利要求l所述的方法,其中所述非易失性高速緩存包括閃存。7.如權(quán)利要求1所述的方法,還包括將所述圖#^入非易失'^##設(shè)備中。8.—種計算系鄉(xiāng)AAM^力率狀態(tài)'ftt的方法,所述方法包括請,:p人非易失'^4^i殳備中讀^^諸器數(shù)據(jù);將讀取請求指引到非易失性高速緩存;以及如果^^渚器數(shù)據(jù)易于利用,則從非易失性高速緩存中讀^H諸器數(shù)據(jù)。9.如權(quán)利要求8所述的方法,其中在計算系統(tǒng)ii^低功率狀態(tài)時,所述非易失性高速緩存對^4者器內(nèi)^ii行高速緩存。10.如權(quán)利要求8所述的方法,其中所述低功率狀態(tài)包括休眠狀態(tài),所述休B^I犬態(tài)包括高糊己置與電源接口規(guī)范下的S4狀態(tài)。11.如權(quán)利要求8所述的方法,其中非易失'^4^浙殳備包括石M驅(qū)動器。12.如權(quán)利要求8所述的方法,其中非易失'^^f浙殳備包括閃存。13.如權(quán)利要求8所述的方法,還包括如果^f渚器數(shù)據(jù)不易于在非易失性高速緩存中利用,則從非易失'f^^殳備中讀^ft器數(shù)據(jù)。14.如權(quán)利要求13所述的方法,其中如果^f諸器數(shù)據(jù)沒有全部在非易失性高速緩存中,則^f諸器數(shù)據(jù)不易于在非易失性高速緩存中利用。15.—種當(dāng)計算系統(tǒng)從低功率狀態(tài)'隨時從非易失性高速緩存中讀取^!4者器l封居的方法,包括請求從非易失性^^殳備中讀取一存儲器數(shù)據(jù)塊,所請求的數(shù)據(jù)塊具有非易失'f生^i殳備上的開始邏輯塊地址;將讀取請求指引到非易失性高速緩存,所述非易失性高速緩存具有映射表;確定reqLBA是否在映射表中;如果reqLBA在映射表中,則才財居映射表中的reqLBA和信息來確定所請求的數(shù)據(jù)狄否出J脈非易失性高速緩存中;以及如果所請求的數(shù)據(jù)塊出現(xiàn)在非易失性高速緩存中,則從非易失性高速緩存中讀^^斤請求的數(shù)據(jù)塊。16.如權(quán)利要求15所述的方法,其中所述低功率狀態(tài)包括休3M犬態(tài),所述休目M犬態(tài)包括高細(xì)己置與電源接口規(guī)范下的S4狀態(tài)。17.如權(quán)利要求15所述的方法,其中所述非易失'^^i殳備包括硬盤驅(qū)動器;以及非易失性高速緩存包括閃存。18.如權(quán)利要求15所述的方法,其中,所述映射表具有至少一個條目,各用于一數(shù)據(jù)塊,抖條目包括非易失'^Wi殳備中數(shù)據(jù)塊的開始邏輯塊i4iit;扇區(qū)中數(shù)據(jù)塊的大??;以及磁盤LBA的非易失性高速緩存中的映射:^i止。19.權(quán)利要求18所述的方法,其中所述映射表根據(jù)多個條目的磁盤LBA以升序或降序這兩者中的至少一個^ii行排列。20.如權(quán)利要求19所述的方法,其中,確定reqLBA是否在映射表中包括通過將reqLBA與映射表中第一個和^^一個條目中的磁盤LBA相比專^M企查reqLBA是否在R^f表的范圍內(nèi)。21.如權(quán)利要求20所述的方法,其中,確定所請求的數(shù)據(jù)狄否出現(xiàn)在非易失性高速緩存中包括確定reqLBA是否在映射表的條目中,如果reqLBA在所述映射表的條目中,則認(rèn)為所請求的數(shù)據(jù)塊出J脈非易失性高速緩存中。22.如權(quán)利要求21所述的方法,其中,確定reqLBA是否在映射表的條目中包括^^]循環(huán)幾性搜索方案。23.如權(quán)利要求15所述的方法,其中,從非易失性高速緩存中讀取所請求的數(shù)據(jù)塊還包括才M居艦表中的reqLBA和信息來獲^^斤請求的數(shù)據(jù)塊的高it纟爰存LBA。24.如權(quán)利要求15所述的方法,還包括如果reqLBA不在映射表中或者如果所請求的數(shù)據(jù)塊沒有出現(xiàn)在非易失性高速緩存中,則從非易失性^f浙殳備中讀^^斤請求的數(shù)據(jù)塊。25.—種提供從^^率狀態(tài)瞬時接通fel的計算系統(tǒng),包括處理器;誄^妾到所皿理器的主#^諸器;l點妄到所述處理器和主存儲器的非易失'f生^i殳備;以及非易失性高速緩存,在計算系統(tǒng)進(jìn)入低功率狀態(tài)時,把將被寫入到非易失性設(shè)備中的內(nèi)容高速緩存到主M器中,以及計算系統(tǒng)低功率狀態(tài)恢復(fù)時為主存儲器提供從非易失性存儲設(shè)備中請求的數(shù)據(jù);其中,在計算系統(tǒng)已進(jìn)入低功率狀態(tài)后關(guān)掉處理器和主務(wù)賭器的電源。26.如權(quán)利要求25所述的系統(tǒng),其中對非易失性高速緩存的存取等待時間短于對非易失'^^f浙殳備的存取等待時間。27.如權(quán)利要求25所述的系統(tǒng),其中所述低功率狀態(tài)包括休目^l犬態(tài),所述休眠狀態(tài)包括高細(xì)i置與電源接口規(guī)范下的S4狀態(tài)。28.如權(quán)利要求25所述的系統(tǒng),其中所述非易失'hi^^i殳備包括硬盤驅(qū)動器;以及非易失性高速緩存包括閃存。29.如權(quán)利要求25所述的系統(tǒng),還包括非易失'^^fi射殳備驅(qū)動器,用于在計算系統(tǒng)iiA低功率狀態(tài)時,如^非易失性高速緩存中存在足夠的空間,則將對非易失性^f浙殳備的寫入重新定向到非易失性高速緩存中;所述非易失'r生刷浙殳備驅(qū)動器包括;紐驅(qū)動器。30.如權(quán)利要求29所述的系統(tǒng),其中主##器的電源直到主務(wù)賭器中的4^卩所需內(nèi)容已被寫入到非易失性^f^殳備或非易失性高速緩存這兩者中的至少一個中時才被關(guān)掉。31.如權(quán)利要求25所述的系統(tǒng),其中所述非易失性高速緩存被井點妾到連接非易失性存儲設(shè)備和對應(yīng)于所述非易失性存4浙殳備的控制器的總線。32.如權(quán)利要求25所述的系統(tǒng),其中所述非易失性高速緩存還用作非易失性設(shè)備的高速緩存。33.如權(quán)利要求25所述的系統(tǒng),還包括隨機ROM,用于在計算系統(tǒng)從低功率狀態(tài)恢復(fù)時,如果所請求的數(shù)據(jù)易于在非易失性高速緩存中利用,則提供從具有來自非易失性高速緩存的數(shù)據(jù)的非易失性設(shè)備中讀取數(shù)據(jù)的請求。全文摘要本發(fā)明“提供從休眠狀態(tài)瞬時接通恢復(fù)的計算系統(tǒng)節(jié)電方法和裝置”。一種計算系統(tǒng)通過在長的不活動時間后進(jìn)入S4狀態(tài)可比S3狀態(tài)節(jié)省更多的功率,并在通過用快速可訪問非易失性高速緩存,從S4狀態(tài)恢復(fù)時具有瞬時接通的能力。在該系統(tǒng)進(jìn)入S4狀態(tài)時,不將存儲器內(nèi)容存儲到磁盤驅(qū)動器中,而將存儲器內(nèi)容高速緩存到非易失性高速緩存中。非易失性高速緩存可耦接到將磁盤驅(qū)動器與磁盤控制器連接的總線。從S4狀態(tài)恢復(fù)時,存儲器內(nèi)容可從非易失性高速緩存中而不是慢速磁盤驅(qū)動器中讀取。高速緩存和恢復(fù)過程都可按OS透明的方式執(zhí)行。在高速緩存過程中可創(chuàng)建映射表并將其存儲在非易失性高速緩存中,以在恢復(fù)過程中提供從非易失性高速緩存中的有效讀取。文檔編號G06F12/08GK101246389SQ200710192950公開日2008年8月20日申請日期2007年9月29日優(yōu)先權(quán)日2006年9月29日發(fā)明者P·塞巴斯蒂安,R·查里,S·S·塔卡,S·庫姆巴塔科內(nèi),U·R·哈納布特申請人:英特爾公司