TWI485623B - 快速喚醒電腦系統方法與電腦系統 - Google Patents
快速喚醒電腦系統方法與電腦系統 Download PDFInfo
- Publication number
- TWI485623B TWI485623B TW101107712A TW101107712A TWI485623B TW I485623 B TWI485623 B TW I485623B TW 101107712 A TW101107712 A TW 101107712A TW 101107712 A TW101107712 A TW 101107712A TW I485623 B TWI485623 B TW I485623B
- Authority
- TW
- Taiwan
- Prior art keywords
- computer system
- system memory
- storage device
- state
- memory
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4418—Suspend and resume; Hibernate and awake
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Power Sources (AREA)
- Stored Programmes (AREA)
Description
本發明是有關於一種操作方法與電腦系統,且特別是有關於一種快速喚醒電腦系統方法與電腦系統。
在進階組態與電源介面(Advanced Configuration and Power Interface,ACPI)標準中,電腦系統的狀態除了工作狀態(亦即S0狀態)之外,更包括了消耗較少電源的休眠狀態(sleeping mode)。而根據耗電量以及回復速度的不同,休眠狀態可分為S1狀態、S3狀態、S4狀態及S5狀態等數個等級。在S1(power on suspend)狀態下,電腦系統只將螢幕關機,所以能很快地回復至工作狀態。而在稱之為記憶體休眠(suspend to ram)的待機狀態S3下,除了記憶體及其控制器需要電源來保持資料外,其餘裝置均停止供電。S4(suspend to disk)狀態是把記憶體中的資料儲存在硬碟,因此不再需要供電給記憶體。而所謂的S5狀態即是關機狀態,此時僅保留非常少的待機電源至電腦系統。
不難想見,在越省電的模式下回復至工作狀態所需要的時間也越長。進一步來說,在上述休眠狀態中最為省電的是S5狀態,然而在由S5狀態回復至工作狀態時,需要透過基本輸入輸出系統(Basic Input Output System,BIOS)進行開機自我測試,據以對週邊硬體裝置進行初始化與掃描的動作,並將相關的設定值填寫至週邊硬體裝置,直到載入對應的驅動程式後才完成整個開機程序。上述動作的執行將導致電腦系統的啟動時間變的十分冗長。
此外,電腦系統在進入S3狀態時,必須持續供電記憶體以保存記憶體內容,否則一旦停止供電記憶體,則記憶體內容喪失而電腦系統就無法回復至進入S3狀態前的作業狀態。如此一來,當電腦系統長時間處於S3狀態時,電池必須持續供電,因此容易降低電池的使用壽命。
本發明提供一種快速喚醒電腦系統方法,可快速回復電腦系統。
本發明提供一種電腦系統,可延長待機時間與延長電池使用壽命。
本發明提出一種快速喚醒電腦系統方法,其中該電腦系統處於一關機狀態,且該電腦系統包含一基本輸入輸出系統、一系統記憶體與一儲存裝置,該儲存裝置儲存該電腦系統進入該關機狀態前該系統記憶體的一系統記憶體資料與一系統記憶體位置區塊表,該方法包括:接收一啟動訊號,以供電該電腦系統。啟動該儲存裝置。啟動該基本輸入輸出系統的一快速開機內建程式,根據該系統記憶體位置區塊表及一最佳化區塊讀寫大小值為一讀寫單位,依序從該儲存裝置中讀取該系統記憶體資料並將所讀取的該系統記憶體資料寫入該系統記憶體。該電腦系統進入一待機狀態。從該待機狀態喚醒該電腦系統。
在本發明之一實施例中,上述之快速喚醒電腦系統方法,其中該電腦系統包括一中央處理器以及一晶片組,而該電腦系統進入該關機狀態還包括:停止供電該中央處理器。啟動該快速開機內建程式,以根據該系統記憶體位置區塊表及一最佳化區塊讀寫大小值為該讀寫單位,依序儲存該系統記憶體的該系統記憶體資料至該儲存裝置。該基本輸入輸出系統設定該晶片組,以使該電腦系統進入該關機狀態。
在本發明之一實施例中,上述之快速喚醒電腦系統方法,於停止供電該中央處理器的步驟之前還包括:接收一關機訊號。根據該關機訊號,啟動一控制程式以通知該電腦系統正在運行的一作業系統進行一登出作業。
在本發明之一實施例中,上述之快速喚醒電腦系統方法,於停止供電該中央處理器的步驟之前以及進行該登出作業之後還包括:該電腦系統正運行的一作業系統產生一待機指令。該基本輸入輸出系統攔截該待機指令,並中斷該待機指令。該基本輸入輸出系統啟動該快速開機內建程式,以儲存該晶片組的一設定值至該系統記憶體。該快速開機內建程式掃瞄該系統記憶體,並建立該系統記憶體的使用中的該系統記憶體位置區塊表。
在本發明之一實施例中,上述之快速喚醒電腦系統方法,其中於停止供電該中央處理器的步驟之前還包括設定一即時時鐘(real-time clock,RTC)以確定一暫時待機時間區間,而於停止供電該中央處理器的步驟中,還包括:該電腦系統進入該待機狀態,以停止供電該中央處理器。該電腦系統於該待機狀態下持續該暫時待機時間區間之後,供電並重置該中央處理器。
在本發明之一實施例中,上述之快速喚醒電腦系統方法,其中於該暫時待機時間區間後,供電該中央處理器的步驟包括以一嵌式控制器(embedded controller,EC)或一硬體電路於該暫時待機時間區間後,供電該中央處理器。
在本發明之一實施例中,上述之快速喚醒電腦系統方法,其中該電腦系統進入該關機狀態前,該電腦系統正運作的一作業系統呈現一第一作業狀態,而從該待機狀態喚醒該電腦系統時該電腦系統運作該作業系統而呈現一第二作業狀態,且該第一作業狀態與該第二作業狀態相同。
在本發明之一實施例中,上述之快速喚醒電腦系統方法,其中於供電該電腦系統之後還包括以該快速開機內建程式清空該系統記憶體。
在本發明之一實施例中,上述之快速喚醒電腦系統方法,其中以該快速開機內建程式清空該系統記憶體的步驟之前還包括初始化該系統記憶體,以及以該快速開機內建程式清空該系統記憶體之後還包括初始化該儲存裝置。
在本發明之一實施例中,上述之快速喚醒電腦系統方法,其中該快速開機內建程式根據該系統記憶體位置區塊表,依序從該儲存裝置中讀取該系統記憶體資料的步驟還包括該快速開機內建程式自動偵測該儲存裝置的該最佳化區塊讀寫大小值。
在本發明之一實施例中,上述之快速喚醒電腦系統方法,其中該快速開機內建程式根據該系統記憶體位置區塊表,依序從該儲存裝置中讀取該系統記憶體資料的步驟還包括該快速開機內建程式自動從該儲存裝置讀取相對應之一資料儲存裝置區塊讀寫大小設定值做為該最佳化區塊讀寫大小值。
在本發明之一實施例中,上述之快速喚醒電腦系統方法,其中該資料儲存裝置區塊讀寫大小設定值可為一原始資料儲存裝置區塊讀寫大小設定值或關機前將該系統記憶體資料寫入該儲存裝置時的一區塊讀寫大小值。
本發明另提出一種電腦系統,包括:中央處理器、晶片組、系統記憶體、儲存裝置以及基本輸入輸出系統。中央處理器執行一作業系統。當該電腦系統處於一關機狀態時,該儲存裝置儲存該電腦系統進入該關機狀態前該系統記憶體的一系統記憶體資料與一系統記憶體位置區塊表。當該電腦系統處於一關機狀態並從該關機狀態喚醒該電腦系統時,該基本輸入輸出系統:啟動一快速開機內建程式,以從該儲存裝置中讀取該系統記憶體位置區塊表,並根據該系統記憶體位置區塊表及一最佳化區塊讀寫大小值為一讀寫單位,依序從該儲存裝置中讀取該系統記憶體資料並將所讀取的該系統記憶體資料寫入該系統記憶體。使該電腦系統進入一待機狀態。從該待機狀態喚醒該電腦系統。
在本發明之一實施例中,上述之電腦系統,其中當該電腦系統進入該關機狀態前且停止供電該中央處理器時,該基本輸入輸出系統。啟動該快速開機內建程式,以根據該系統記憶體位置區塊表及該最佳化區塊讀寫大小值為該讀寫單位,依序儲存該系統記憶體的該系統記憶體資料至該儲存裝置。設定該晶片組,以使該電腦系統進入該關機狀態。
在本發明之一實施例中,上述之電腦系統,其中停止供電該中央處理器前,該作業系統產生一待機指令,而該基本輸入輸出系統:攔截該待機指令,並中斷該待機指令。啟動該快速開機內建程式,以儲存該晶片組的一設定值至該系統記憶體,並且掃瞄該系統記憶體,以建立該系統記憶體的使用中的該系統記憶體位置區塊表。
在本發明之一實施例中,上述之電腦系統,還包括一即時時鐘,由該基本輸入輸出系統設定該即時時鐘以確定一暫時休眠時間區間,使該電腦系統進入該待機狀態並持續該暫時休眠時間區間,以停止供電該電腦系統的一中央處理器,並於該暫時休眠時間區間後,供電並重置該中央處理器。
在本發明之一實施例中,上述之電腦系統,還包括一控制器,以於該暫時待機時間區間後,供電並重置該中央處理器。
在本發明之一實施例中,上述之電腦系統,其中在停止供電該中央處理器之前,該中央處理器:接收一關機訊號。根據該關機訊號,啟動一控制程式以通知該電腦系統正在運行的該作業系統進行一登出作業。
在本發明之一實施例中,上述之電腦系統,其中該電腦系統進入該關機狀態前,該作業系統呈現一第一作業狀態,而從該待機狀態喚醒該電腦系統時,該作業系統呈現一第二作業狀態,且該第一作業狀態與該第二作業狀態相同。
在本發明之一實施例中,上述之電腦系統,其中當該電腦系統從該關機狀態喚醒時,該基本輸入輸出系統從該儲存裝置中讀取該系統記憶體位置區塊表之前還包括:初始化該系統記憶體。清除該系統記憶體的一記憶體內容。初始化該儲存裝置。
基於上述,本發明中,在電腦系統接收到電源控制訊號之後,作業系統執行待機狀態,將系統記憶體中的系統記憶體資料依序儲存至儲存裝置,隨後進入關機狀態。因此在接收到回復訊號後,基本輸入輸出系統再將儲存在儲存裝置的系統記憶體資料依序回存至系統記憶體,並且經由待機狀態喚醒作業系統。也就是,所喚醒的作業系統的作業狀態與關機前的作業系統之作業狀態相同,因此省略從關機狀態開機時需要進行的周邊硬體掃描開機程序以及進入作業系統後執行背景應用程式,而使用者更無須花時間等待冗長開機程序與作業系統環境準備,達到快速喚醒電腦系統或快速開機的功效。此外,回應使用者的代表電源暫停的電源控制訊號,而作業系統執行待機狀態,至最後進入關機狀態而使電腦系統電量需求降至最低限度,可免除電池在電腦系統處於待機狀態時,還持續供電系統記憶體,導致電池使用壽命的耗損的問題。另外,由於電腦系統回復時,是回復到進入關機狀態前的作業狀態,因此對於使用者使用上會認為是電腦系統是從待機狀態回復,而使用感官上有可延長待機時間的功效。
為讓本發明之上述特徵和優點能更明顯易懂,下文特舉實施例,並配合所附圖式作詳細說明如下。
圖1繪示為根據本發明一實施例的一種電腦系統示意簡圖。請參照圖1,本實施例中,電腦系統100包括:一中央處理器102、一系統記憶體104、一儲存裝置106、一基本輸入輸出系統記憶體108以及晶片組110。其中,中央處理器102執行一作業系統。而儲存裝置106例如是硬碟驅動機(hard disk driver,HDD)之儲存單元、固態硬碟(Solid State Drive,SSD)、快閃記憶體或是非揮發性記憶體(Non-Volatile Memory)。系統記憶體例如是隨機存取記憶體(random access memory,RAM)。再者,基本輸入輸出系統記憶體108,用以儲存一基本輸入輸出系統。
圖2繪示為根據本發明一實施例的一種快速喚醒電腦系統方法流程簡圖。請參照圖1與圖2,於本實施例中,電腦系統100處於一關機狀態,亦即在進階組態與電源介面(Advanced Configuration and Power Interface,ACPI)標準的定義中的S5狀態。此外,當電腦系統100於S5狀態時,儲存裝置106儲存電腦系統100進入S5狀態前,系統記憶體104的系統記憶體資料(亦即使用中記憶體內容)與系統記憶體位置區塊表(亦即使用中記憶體位置區塊表)。其中,系統記憶體位置區塊表記錄每筆系統記憶體資料於系統記憶體中的相對應位址。於步驟S201中,電腦系統100接收一回復訊號,以回復電腦系統100的一作業系統。舉例而言,使用者經由電腦系統100的輸入裝置(未繪示)或是電源鍵(power button)(未繪示)產生一回復訊號,以企圖喚醒作業系統。而根據此回復訊號,電腦系統100的控制器(如圖1所示的控制器112,例如嵌式控制器(embedded controller,EC))或是硬體電路供電系統記憶體。
於步驟S205中,基本輸入輸出系統從儲存裝置106中讀取系統記憶體位置區塊表。之後,於步驟S211中,根據系統記憶體位置區塊表,基本輸入輸出系統依序從儲存裝置106中讀取系統記憶體資料,並儲存所讀取的系統記憶體資料至系統記憶體104。其中基本輸入輸出系統例如是以一記憶區塊為讀寫單位,根據系統記憶體位置區塊表,依序讀取系統記憶體資料,並依序寫入系統記憶體104中。舉例而言,基本輸入輸出系統以一最佳化區塊讀寫大小值為讀寫單位,從儲存裝置中讀取系統記憶資料,並將其寫入系統記憶體中。於另一實施例中,基本輸入輸出系統先從儲存裝置讀取相對應的資料儲存裝置區塊讀寫大小設定值,並以此資料儲存裝置區塊讀寫大小設定值為最佳化區塊讀寫大小值做為讀寫單位,讀取系統記憶資料,並將其寫入系統記憶體中。此外,上述資料儲存裝置區塊讀寫大小設定值可為一原始資料儲存裝置區塊讀寫大小設定值或關機前將系統記憶體資料寫入儲存裝置時的一區塊讀寫大小值。於再一實施例中,決定上述最佳化區塊讀寫大小值的方法包括根據所要存取的資料量大小,以最少的讀取次數或最快的存取速度為基準,決定最佳化區塊讀寫大小值。於又一實施例中,決定上述最佳化區塊讀寫大小值的方法包括根據儲存裝置的容量大小,以最快的讀取次數或最快的存取速度為基準,決定一最佳化區塊讀寫大小值。
不論所要讀取的資料量大小或是儲存裝置的容量大小,於一般的以區塊為讀取單位的資料讀取與寫入方法中,均是以固定的區塊大小做為區塊式資料讀取與寫入的單位,例如4KB、8KB或16KB。然而於本發明中,基本輸入輸出系統例如是在系統記憶體資料的讀取與寫入操作前,先決定最佳化區塊讀寫大小值,並以此最佳化區塊讀寫大小值為讀寫單位。而決定此最佳化區塊讀寫大小值是根據所要讀取的資料量大小或是儲存裝置的容量大小而決定,亦或是以儲存裝置的資料儲存裝置區塊讀寫大小設定值做為最佳化區塊讀寫大小值。因此不同的所欲讀取資料量大小、不同的儲存裝置容量大小或是不同的資料儲存裝置區塊讀寫大小設定值,會決定出不同的讀寫單位。本發明中,由於讀寫單位是隨著所欲讀取資料量大小、儲存裝置容量大小或是資料儲存裝置區塊讀寫大小設定值而不同,因此在系統記憶體資料的讀取與寫入操作上,比習知的固定讀取與寫入單位,具有更快速的資料讀取與寫入操作速度。換句話說,更加速整體喚醒電腦系統的速度。
繼之,於步驟S215中,基本輸入輸出系統進行一待機狀態的一回復程序。最後,於步驟S221中,從待機狀態回復至作業系統。其中,待機狀態亦即在進階組態與電源介面標準的定義中的S3狀態。此外,值得注意的是,在電腦系統100進入關機狀態前,此作業系統呈現一第一作業狀態,而從待機狀態(S3狀態)回復此作業系統時,此作業系統呈現一第二作業狀態,於此同時,第一作業狀態與該第二作業狀態相同。
也就是,從使用者的觀點看到的是電腦系統100所運行的作業系統回復至關機之前的作業狀態。由於電腦系統100從S5狀態回復過程中,經由基本輸入輸出系統將儲存於儲存裝置106中的系統記憶體資料依照系統記憶體位置區塊表依序存回系統記憶體104中,以將系統記憶體回復至電腦系統進入S5狀態前的作業狀態,並且後續執行S3狀態的回復程序,也就是從S3狀態回復電腦系統,因此可省去習知直接從S5狀態開機時,基本輸入輸出系統對週邊硬體裝置進行掃描動作、將相關的設定值填寫至週邊硬體裝置以及載入對應的驅動程式等冗長開機程序,並且可省去完成開機程序進入作業系統時啟動系統背景應用程式(例如掃毒程式、網際網路自動連線偵測程式)所需的時間。
圖2A繪示為根據本發明一實施例的一種快速喚醒電腦系統方法中系統記憶體與儲存裝置的初始化步驟流程簡圖。請參照圖2A,於一實施例中,於接收回復訊號的步驟S201之後與從儲存裝置讀取系統記憶體位置區塊表的步驟S205之前,還包括:基本輸入輸出系統初始化系統記憶體104(步驟S251),清空系統記憶體(亦即清除系統記憶體104的一記憶體內容)(步驟S255),以及初始化儲存裝置106(步驟S261)。
再者,於又一實施例中,在根據系統記憶體位置區塊表依序從儲存裝置106將所讀取的系統記憶體資料儲存至系統記憶體104中的步驟S211之後以及進行待機狀態的回復程序的步驟S215之前,還包括由晶片組110送出重置指令至中央處理器102,以重置中央處理器102。另外,於另一實施例中,進行待機狀態的回復程序的步驟S215之後與從待機狀態回復至作業系統的步驟S221之前,還包括從系統記憶體106將晶片組110的暫存器內容再存回晶片組110,以及基本輸入輸出系統跳躍至待機狀態喚醒向量(S3 wake-up vector),以將程序控制權交還給作業系統,以使電腦系統100在步驟S221中,由作業系統執行待機狀態回復,而從待機狀態回復作業系統。
於本發明中,由於在電腦系統100的儲存裝置106中儲存有電腦系統100進入關機狀態(S5狀態)前,系統記憶體104的系統記憶體資料,因此在進行電腦系統100回復時,基本輸出輸入系統可先將儲存在儲存裝置106中的系統記憶體資料依序回存至系統記憶體104,因此基本輸入輸出系統可以執行待機狀態的回復程序,以從待機狀態回復電腦系統的作業系統,達到快速回復作業系統的目的。而本發明在電腦系統100的儲存裝置106中儲存有電腦系統100進入關機狀態(S5狀態)前,系統記憶體104的系統記憶體資料的概念亦可應用於延長電腦系統的待機時間、延長電池使用壽命以及快速開機上。以下將舉數個實施例說明上述的應用。
圖3繪示為根據本發明一實施例的一種快速喚醒電腦系統方法中電腦系統進入關機狀態的步驟流程簡圖。請參照圖1與圖3,電腦系統100接收一電源控制訊號,例如是一電源暫停訊號,包括休眠訊號或待機訊號。根據此電源控制訊號,於步驟S301中,中央處理器正在運行的作業系統則執行待機狀態(S3狀態)。之後,於步驟S305中,基本輸入輸出系統攔截(trap)待機狀態以使電腦系統100進入一系統管理模式(system management mode,SMM)。於步驟S311中,基本輸入輸出系統將電腦系統100的晶片組110的一設定值儲存至系統記憶體104中。之後,於步驟S315中,基本輸入輸出系統掃瞄系統記憶體104,並建立系統記憶體104的系統記憶體位置區塊表。其中,基本輸入輸出系統例如是以一記憶區塊為讀寫單位,建立系統記憶體位置區塊表,並儲存於系統記憶體104中。於步驟S321中,基本輸入輸出系統離開系統管理模式。接著,於步驟S325中,根據系統記憶體位置區塊表,基本輸入輸出系統依序將系統記憶體104的系統記憶體資料儲存至儲存裝置106。其中基本輸入輸出系統例如是以一記憶區塊為讀寫單位,根據系統記憶體位置區塊表,依序將每一記憶區塊中的系統記憶體資料儲存至儲存裝置106中。舉例而言,基本輸入輸出系統以一最佳化區塊讀寫大小值為讀寫單位,讀取系統記憶資料,並將其儲存至儲存裝置中。
繼之,於步驟S331中,將系統記憶體位置區塊表儲存至儲存裝置106。最後,於步驟S335中,進入該關機狀態(亦即S5狀態),其包括基本輸入輸出系統設定晶片組110至S5狀態,且停止供電電腦系統100。
於本實施例中,當使用者藉由輸入裝置或是電源鍵產生一電源控制訊號而企圖讓電腦系統100進入待機狀態時,將系統記憶體104中的系統記憶體資料儲存至儲存裝置106中,之後使電腦系統100進入關機狀態並停止供電。本實施例的電腦系統的由暫時待機合併之後進入關機狀態的混合式待機方法搭配前述實施例的快速喚醒電腦系統方法,由於儲存裝置106儲存有關機前系統記憶體104的系統記憶體資料,因此電腦系統100在作業系統回復時,可將系統記憶體資料回存至系統記憶體以使系統記憶體回復到電腦系統100進入關機狀態前的狀況。所以,在電腦系統100回復作業系統後,所呈現的作業狀態如同電腦系統100進入關機狀態前的作業狀態。以使用者的觀點看到的是如同電腦系統100從休眠狀態或待機狀態回復,而不是重新開機的作業系統環境。此外,於本實施例中,由於回應使用者的電源暫停訊號,而作業系統執行待機狀態(S3狀態),至最後進入關機狀態而使電腦系統電量需求降至最低限度,可免除電池在電腦系統處於待機狀態時,還持續供電系統記憶體,導致電池使用壽命的耗損的問題。此外,由於電腦系統100回復時,是回復到進入關機狀態(S5狀態)前的作業狀態,因此對於使用者使用上會認為是電腦系統100是從待機狀態(S3狀態)回復,而使用感官上有可延長待機時間又同時節省電源以及延長電池壽命的功效。
圖3A繪示為根據本發明一實施例的一種快速喚醒電腦系統方法中電腦系統進入關機狀態前,電腦系統進入待機狀態與被喚醒的步驟流程簡圖。請參照圖3,於一實施例中,在離開系統管理模式的步驟S321之前還包括設定一即時時鐘(real-time clock,RTC)以確定一暫時待機時間區間以重置中央處理器102。而在離開系統管理模式的步驟S321中還包括:電腦系統100進入待機狀態(S3狀態),以停止供電電腦系統100的中央處理器102(步驟S351)。於此暫時待機時間區間後,供電並重置中央處理器102(步驟S355)。其中,供電中央處理器102的步驟包括以一嵌式控制器(embedded controller,EC)或一硬體電路於該暫時待機時間區間後,供電中央處理器102。
也就是在設定即時時鐘時,可延長暫時待機時間區間。換句話說,於離開系統管理模式的步驟S321中,可延長停止供電中央處理器102(步驟S351)與再次供電與重置中央處理器102(步驟355)之間的時間差,以延長電腦系統100處於待機狀態(S3狀態)的時間。而暫時待機時間區間的長短亦可以由使用者自行設定,以決定當電腦系統100進行混合式待機方法時,電腦系統100停留在S3狀態的時間長短。
此外,上述實施例中,是以當電腦系統100接收到電源控制訊號是電源暫停訊號為例,使電腦系統100由暫時待機合併之後進入關機狀態的混合式待機方法搭配快速喚醒電腦系統方法,舉例本發明的回復方法之應用以達到延長待機時間與提高電池壽命的目的。然本發明並不受限於此,也就是上述的混合式待機方法搭配快速喚醒電腦系統方法,根據電腦系統所接收到的電源控制訊號的不同(例如關機訊號),亦可以應用於快速開機上。以下將舉一實施例說明混合式待機方法搭配快速喚醒電腦系統方法的快速開機應用。
圖4A繪示為根據本發明另一實施例的一種快速喚醒電腦系統方法中,根據電源按鍵、熱鍵或是軟體關機程式,電腦系統進入關機狀態的步驟流程簡圖。請參照圖4,於步驟S401中,電腦系統100的中央處理器接收一電源控制訊號,例如是一關機訊號。其中關機訊號是經由一電源鍵、一熱鍵或是一軟體關機程式所產生。之後,於步驟S405中,中央處理器根據此電源控制訊號,啟動一控制程式以通知電腦系統正在運行的作業系統進行一登出作業。接著,於步驟S411中,於作業系統進行登出作業之後,作業系統產生一待機指令。繼之,進行上述實施例所述的混合待機方法,包括於步驟S415中,基本輸入輸出系統攔截此待機指令,並中斷待機指令以進入系統管理模式;於步驟S421中,基本輸入輸出系統啟動快速開機內建程式,儲存晶片組的一設定值至系統記憶體;於步驟S425中,快速開機內建程式掃瞄系統記憶體,並建立系統記憶體的使用中的系統記憶體位置區塊表。
接著,於步驟S431中,停止供電中央處理器,並離開系統管理模式;於步驟S435中,基本輸入輸出系統啟動快速開機內建程式,以根據系統記憶體位置區塊表及以最佳化區塊讀寫大小值為讀寫單位,依序儲存系統記憶體的系統記憶體資料(亦即使用中記憶體內容)至儲存裝置;於步驟S441中,基本輸入輸出系統設定晶片組,以使電腦系統進入關機狀態(S5)並且關閉系統電源。
於一實施例中,上述停止供電該中央處理器並離開系統管理模式的步驟之前還包括設定即時時鐘以確定一暫時待機時間區間。此外,而於停止供電中央處理器並離開系統管理模式的步驟(步驟S431)中,還包括電腦系統進入待機狀態(S3),以停止供電電腦系統的中央處理器(如圖3A之步驟S351),而電腦系統於此暫時待機時間區間內,維持待機狀態,於此暫時待機時間區間之後供電並重置中央處理器(如圖3A之步驟S355)。其中,於暫時待機時間區間後,供電中央處理器的步驟包括以一嵌式控制器(embedded controller,EC)或一硬體電路於該暫時休眠待機時間區間後,供電中央處理器。
圖4B繪示為根據本發明另一實施例的在經由混合式待機方法關機之後,一種快速喚醒電腦系統的方法。之後,請參照圖4B,當使用者經由電腦系統100的電源鍵開機時,電腦系統100如同接收到一啟動訊號,以供電電腦系統(步驟S445)。於步驟S451中,啟動該儲存裝置;於步驟S455中,基本輸入輸出系統啟動快速開機內建程式,以根據系統記憶體位置區塊表以及以最佳化區塊讀寫大小值為讀寫單位,依序從儲存裝置中讀取系統記憶體資料並將所讀取的系統記憶體資料寫入系統記憶體;於步驟S461中,基本輸入輸出系統使電腦系統進入待機狀態(S3);於步驟S465中,從待機狀態喚醒電腦系統。
於一實施例中的步驟S455中,快速開機內建程式依序從儲存裝置中讀取系統記憶體資料的步驟還包括快速開機內建程式自動偵測儲存裝置的最佳化區塊讀寫大小值,並以最佳化區塊讀寫大小值為一讀寫單位,快速開機內建程式依序將所讀取的該系統記憶體資料寫入該系統記憶體。於又一實施例中的步驟S455中,快速開機內建程式依序從儲存裝置中讀取系統記憶體資料的步驟還包括快速開機內建程式自動從儲存裝置讀取相對應之一資料儲存裝置區塊讀寫大小設定值做為該最佳化區塊讀寫大小值。此外,上述資料儲存裝置區塊讀寫大小設定值可為一原始資料儲存裝置區塊讀寫大小設定值或關機前將系統記憶體資料寫入儲存裝置時的一區塊讀寫大小值。再者,於一實施例中,決定上述最佳化區塊讀寫大小值的方法包括根據所要存取的資料量大小,以最少的讀取次數或最快的存取速度為基準,決定最佳化區塊讀寫大小值。於又一實施例中,決定上述最佳化區塊讀寫大小值的方法包括根據儲存裝置的容量大小,以最快的讀取次數或最快的存取速度為基準,決定一最佳化區塊讀寫大小值。
於一實施例中,於供電電腦系統之後還包括以快速開機內建程式清空該系統記憶體(如圖2A之步驟S255)。再者,於以快速開機內建程式清空該系統記憶體的步驟之前還包括初始化系統記憶體(如圖2A之步驟S251),以及以快速開機內建程式清空該系統記憶體之後初始化儲存裝置(如圖2A之步驟S261)。
也就是本實施例的快速開機方法是在最後一次關機時,在作業系統完成登出作業後,作業系統進入S3狀態,以在電腦系統100關機之前,將系統記憶體104內的系統記憶體資料,根據系統記憶體位置區塊表,依序儲存至儲存裝置106,之後電腦統100才進入S5狀態關機。爾後,在電腦系統100接收到開機訊號時,基本輸入輸出系統可將關機前儲存在儲存裝置106中的系統記憶體資料,根據系統記憶體位置區塊表,依序回存至系統記憶體104中,並經由S3喚醒作業系統,使所喚醒的作業系統的作業狀態與電腦系統進入關機狀態前的作業狀態相同(也就是相同於作業系統完成登出作業時的作業狀態)。因此根據本發明,電腦系統100的開機程序省略了習知從S5狀態開機時,基本輸入輸出系統對週邊硬體裝置進行掃描動作的冗長開機程序,並且可省去完成開機程序進入作業系統時啟動系統背景應用程式(例如掃毒程式、網際網路自動連線偵測程式)所需的時間,因而可達到快速開機的目的。
綜上所述,本發明中,在電腦系統運行作業系統以執行S3狀態,將系統記憶體中的系統記憶體資料依序儲存至儲存裝置,隨後進入S5狀態關機。因此在接收到回復訊號後,基本輸入輸出系統再將儲存在儲存裝置的系統記憶體資料依序回存至系統記憶體,並且經由S3狀態喚醒作業系統。也就是,所喚醒的作業系統的作業狀態與關機前的作業系統之作業狀態相同,因此,本發明的混合待機方法搭配快速喚醒電腦系統方法省略從S5開機時需要進行的周邊硬體掃描開機程序以及進入作業系統後執行背景應用程式,而使用者更無須花時間等待冗長開機程序與作業系統環境準備,達到快速喚醒電腦系統或快速開機的功效。此外,回應使用者的電源暫停訊號,而作業系統執行S3狀態,至最後進入S5狀態而使電腦系統電量需求降至最低限度,可免除電池在電腦系統處於待機狀態時,還持續供電系統記憶體,導致電池使用壽命的耗損的問題。另外,由於電腦系統回復時,是回復到進入S5狀態前的作業狀態,因此對於使用者使用上會認為是電腦系統是從S3狀態回復,而使用感官上有可延長待機時間的功效。再者,本發明中,由於讀寫單位是隨著所欲讀取資料量大小、儲存裝置容量大小或是資料儲存裝置區塊讀寫大小設定值而不同,因此在系統記憶體資料的讀取與寫入操作上,比習知的固定讀取與寫入單位,具有更快速的資料讀取與寫入操作速度。換句話說,更加速整體喚醒電腦系統的速度。
雖然本發明已以實施例揭露如上,然其並非用以限定本發明,任何所屬技術領域中具有通常知識者,在不脫離本發明之精神和範圍內,當可作些許之更動與潤飾,故本發明之保護範圍當視後附之申請專利範圍所界定者為準。
100...電腦系統
102...中央處理器
104...系統記憶體
106...儲存裝置
108...基本輸入輸出系統記憶體
110...晶片組
112...控制器
S201~S261、S301~S355、S401~465...方法流程步驟
圖1繪示為根據本發明一實施例的一種電腦系統示意簡圖。
圖2繪示為根據本發明一實施例的一種快速喚醒電腦系統方法流程簡圖。
圖2A繪示為根據本發明一實施例的一種快速喚醒電腦系統方法中系統記憶體與儲存裝置的初始化步驟流程簡圖。
圖3繪示為根據本發明一實施例的一種快速喚醒電腦系統方法中電腦系統進入關機狀態的步驟流程簡圖。
圖3A繪示為根據本發明一實施例的一種快速喚醒電腦系統方法中電腦系統進入關機狀態前,電腦系統進入待機狀態與被喚醒的步驟流程簡圖。
圖4A繪示為根據本發明另一實施例的一種快速喚醒電腦系統方法中,根據電源按鍵、熱鍵或是軟體關機程式,電腦系統進入關機狀態的步驟流程簡圖。
圖4B繪示為根據本發明另一實施例的在經由混合式待機方法關機之後,一種快速喚醒電腦系統的方法。
S201~S221...方法流程步驟
Claims (20)
- 一種快速喚醒電腦系統方法,其中該電腦系統處於一關機狀態,且該電腦系統包含一基本輸入輸出系統、一系統記憶體與一儲存裝置,該儲存裝置儲存該電腦系統進入該關機狀態前該系統記憶體的一系統記憶體資料與一系統記憶體位置區塊表,該方法包括:接收一啟動訊號,以供電該電腦系統;啟動該儲存裝置;啟動該基本輸入輸出系統的一快速開機內建程式,根據該系統記憶體位置區塊表及一最佳化區塊讀寫大小值為一讀寫單位,依序從該儲存裝置中讀取該系統記憶體資料並將所讀取的該系統記憶體資料寫入該系統記憶體,其中該最佳化區塊讀寫大小值預先儲存於該儲存裝置,並且是根據該儲存裝置的最少讀取次數以及該系統記憶體的最快寫入速度為基準所設定,其中,該儲存裝置是硬碟驅動器、固態硬碟、快閃記憶體、或非揮發性記憶體,該系統記憶體是隨機存取記憶體;該電腦系統進入一待機狀態;以及從該待機狀態喚醒該電腦系統。
- 如申請專利範圍第1項所述之快速喚醒電腦系統方法,其中該電腦系統包括一中央處理器以及一晶片組,而該電腦系統進入該關機狀態還包括:停止供電該中央處理器;啟動該快速開機內建程式,以根據該系統記憶體位置 區塊表及該最佳化區塊讀寫大小值為該讀寫單位,依序儲存該系統記憶體的該系統記憶體資料至該儲存裝置;以及該基本輸入輸出系統設定該晶片組,以使該電腦系統進入該關機狀態。
- 如申請專利範圍第2項所述之快速喚醒電腦系統方法,於停止供電該中央處理器的步驟之前還包括:接收一關機訊號;以及根據該關機訊號,啟動一控制程式以通知該電腦系統正在運行的一作業系統進行一登出作業。
- 如申請專利範圍第3項所述之快速喚醒電腦系統方法,於停止供電該中央處理器的步驟之前以及進行該登出作業之後還包括:該電腦系統正運行的一作業系統產生一待機指令;該基本輸入輸出系統攔截該待機指令,並中斷該待機指令;該基本輸入輸出系統啟動該快速開機內建程式,以儲存該晶片組的一設定值至該系統記憶體;以及該快速開機內建程式掃瞄該系統記憶體,並建立該系統記憶體的使用中的該系統記憶體位置區塊表。
- 如申請專利範圍第2項所述之快速喚醒電腦系統方法,其中於停止供電該中央處理器的步驟之前還包括設定一即時時鐘(real-time clock,RTC)以確定一暫時待機時間區間,而於停止供電該中央處理器的步驟中,還包括:該電腦系統進入該待機狀態,以停止供電該中央處理 器;以及該電腦系統於該待機狀態下持續該暫時待機時間區間之後,供電並重置該中央處理器。
- 如申請專利範圍第5項所述之快速喚醒電腦系統方法,其中於該暫時待機時間區間後,供電該中央處理器的步驟包括以一嵌式控制器(embedded controller,EC)或一硬體電路於該暫時待機時間區間後,供電該中央處理器。
- 如申請專利範圍第1項所述之快速喚醒電腦系統方法,其中該電腦系統進入該關機狀態前,該電腦系統正運作的一作業系統呈現一第一作業狀態,而從該待機狀態喚醒該電腦系統時該電腦系統運作該作業系統而呈現一第二作業狀態,且該第一作業狀態與該第二作業狀態相同。
- 如申請專利範圍第1項所述之快速喚醒電腦系統方法,其中於供電該電腦系統之後還包括以該快速開機內建程式清空該系統記憶體。
- 如申請專利範圍第8項所述之快速喚醒電腦系統方法,其中以該快速開機內建程式清空該系統記憶體的步驟之前還包括初始化該系統記憶體,以及以該快速開機內建程式清空該系統記憶體之後還包括初始化該儲存裝置。
- 如申請專利範圍第1項所述之快速喚醒電腦系統方法,其中該快速開機內建程式根據該系統記憶體位置區塊表,依序從該儲存裝置中讀取該系統記憶體資料的步驟還包括該快速開機內建程式自動偵測該儲存裝置的該最佳化區塊讀寫大小值。
- 如申請專利範圍第1項所述之快速喚醒電腦系統方法,其中該快速開機內建程式根據該系統記憶體位置區塊表,依序從該儲存裝置中讀取該系統記憶體資料的步驟還包括該快速開機內建程式自動從該儲存裝置讀取相對應之一資料儲存裝置區塊讀寫大小設定值做為該最佳化區塊讀寫大小值。
- 如申請專利範圍第11項所述之快速喚醒電腦系統方法,其中該資料儲存裝置區塊讀寫大小設定值可為一原始資料儲存裝置區塊讀寫大小設定值或關機前將該系統記憶體資料寫入該儲存裝置時的一區塊讀寫大小值。
- 一種電腦系統,包括:一中央處理器,執行一作業系統;一晶片組;一系統記憶體;一儲存裝置,其中當該電腦系統處於一關機狀態時,該儲存裝置儲存該電腦系統進入該關機狀態前該系統記憶體的一系統記憶體資料與一系統記憶體位置區塊表;一基本輸入輸出系統,當該電腦系統處於一關機狀態並從該關機狀態喚醒該電腦系統時,該基本輸入輸出系統:啟動一快速開機內建程式,以從該儲存裝置中讀取該系統記憶體位置區塊表,並根據該系統記憶體位置區塊表及一最佳化區塊讀寫大小值為一讀寫單位,依序從該儲存裝置中讀取該系統記憶體資料並將所讀取的該系統記憶體資料寫入該系統記憶體,其中該最佳化區塊讀寫大小值預先儲存於該儲存裝置,並且是根據該儲存裝置的最 少讀取次數以及該系統記憶體的最快寫入速度為基準所設定,其中,該儲存裝置是硬碟驅動器、固態硬碟、快閃記憶體、或非揮發性記憶體,該系統記憶體是隨機存取記憶體;使該電腦系統進入一待機狀態;以及從該待機狀態喚醒該電腦系統。
- 如申請專利範圍第13項所述之電腦系統,其中當該電腦系統進入該關機狀態前且停止供電該中央處理器時,該基本輸入輸出系統:啟動該快速開機內建程式,以根據該系統記憶體位置區塊表及該最佳化區塊讀寫大小值為該讀寫單位,依序儲存該系統記憶體的該系統記憶體資料至該儲存裝置;以及設定該晶片組,以使該電腦系統進入該關機狀態。
- 如申請專利範圍第14項所述之電腦系統,其中停止供電該中央處理器前,該作業系統產生一待機指令,而該基本輸入輸出系統:攔截該待機指令,並中斷該待機指令;啟動該快速開機內建程式,以儲存該晶片組的一設定值至該系統記憶體,並且掃瞄該系統記憶體,以建立該系統記憶體的使用中的該系統記憶體位置區塊表。
- 如申請專利範圍第15項所述之電腦系統,還包括一即時時鐘,由該基本輸入輸出系統設定該即時時鐘以確定一暫時休眠時間區間,使該電腦系統進入該待機狀態並持續該暫時休眠時間區間,以停止供電該電腦系統的一中 央處理器,並於該暫時休眠時間區間後,供電並重置該中央處理器。
- 如申請專利範圍第16項所述之電腦系統,還包括一控制器,以於該暫時待機時間區間後,供電並重置該中央處理器。
- 如申請專利範圍第14項所述之電腦系統,其中在停止供電該中央處理器之前,該中央處理器:接收一關機訊號;以及根據該關機訊號,啟動一控制程式以通知該電腦系統正在運行的該作業系統進行一登出作業。
- 如申請專利範圍第13項所述之電腦系統,其中該電腦系統進入該關機狀態前,該作業系統呈現一第一作業狀態,而從該待機狀態喚醒該電腦系統時,該作業系統呈現一第二作業狀態,且該第一作業狀態與該第二作業狀態相同。
- 如申請專利範圍第13項所述之電腦系統,其中當該電腦系統從該關機狀態喚醒時,該基本輸入輸出系統從該儲存裝置中讀取該系統記憶體位置區塊表之前還包括:初始化該系統記憶體;清除該系統記憶體的一記憶體內容;以及初始化該儲存裝置。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201161450601P | 2011-03-08 | 2011-03-08 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201237756A TW201237756A (en) | 2012-09-16 |
TWI485623B true TWI485623B (zh) | 2015-05-21 |
Family
ID=46797147
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW101107712A TWI485623B (zh) | 2011-03-08 | 2012-03-07 | 快速喚醒電腦系統方法與電腦系統 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20120233451A1 (zh) |
CN (1) | CN102736928B (zh) |
TW (1) | TWI485623B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103197933A (zh) * | 2012-01-06 | 2013-07-10 | 华硕电脑股份有限公司 | 计算机及其快速启动方法 |
CN105045370A (zh) * | 2015-07-01 | 2015-11-11 | 三星半导体(中国)研究开发有限公司 | 在电子终端中执行睡眠状态管理的方法及其电子终端 |
CN106060651B (zh) * | 2016-06-06 | 2019-08-16 | 深圳Tcl数字技术有限公司 | 智能电视的启动方法及系统 |
US10228750B2 (en) * | 2016-10-31 | 2019-03-12 | Dell Products, L.P. | Reducing the power consumption of an information handling system capable of handling both dynamic and static display applications |
US10496307B1 (en) * | 2016-12-30 | 2019-12-03 | EMC IP Holding Company LLC | Reaching a normal operating mode via a fastboot procedure |
CN110750309B (zh) * | 2019-09-17 | 2023-06-30 | 宜鼎国际股份有限公司 | 可远程控制电子设备的系统及方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6230265B1 (en) * | 1998-09-30 | 2001-05-08 | International Business Machines Corporation | Method and system for configuring resources in a data processing system utilizing system power control information |
US7111159B2 (en) * | 1999-12-30 | 2006-09-19 | Cardiac Pacemakers, Inc. | Quick starting external programmer for implantable medical device |
US20060271798A1 (en) * | 2005-05-31 | 2006-11-30 | Sony Computer Entertainment America Inc. | Configurable interrupt scheme for waking up a system from sleep mode |
US20070101077A1 (en) * | 2005-10-28 | 2007-05-03 | International Business Machines Corporation | Mirroring system memory in non-volatile random access memory (NVRAM) for fast power on/off cycling |
US20070162700A1 (en) * | 2005-12-16 | 2007-07-12 | Microsoft Corporation | Optimizing write and wear performance for a memory |
TW200923784A (en) * | 2007-11-16 | 2009-06-01 | Asustek Comp Inc | Electronic device and method for resuming from suspend-to-ram state thereof |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8510497B2 (en) * | 2009-07-29 | 2013-08-13 | Stec, Inc. | Flash storage device with flexible data format |
US8645437B2 (en) * | 2010-10-29 | 2014-02-04 | At&T Intellectual Property I, L.P. | System and method for providing fast startup of a large file delivery |
-
2012
- 2012-03-07 TW TW101107712A patent/TWI485623B/zh active
- 2012-03-08 CN CN201210059715.5A patent/CN102736928B/zh active Active
- 2012-03-08 US US13/414,740 patent/US20120233451A1/en not_active Abandoned
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6230265B1 (en) * | 1998-09-30 | 2001-05-08 | International Business Machines Corporation | Method and system for configuring resources in a data processing system utilizing system power control information |
US7111159B2 (en) * | 1999-12-30 | 2006-09-19 | Cardiac Pacemakers, Inc. | Quick starting external programmer for implantable medical device |
US20060271798A1 (en) * | 2005-05-31 | 2006-11-30 | Sony Computer Entertainment America Inc. | Configurable interrupt scheme for waking up a system from sleep mode |
US20070101077A1 (en) * | 2005-10-28 | 2007-05-03 | International Business Machines Corporation | Mirroring system memory in non-volatile random access memory (NVRAM) for fast power on/off cycling |
US20070162700A1 (en) * | 2005-12-16 | 2007-07-12 | Microsoft Corporation | Optimizing write and wear performance for a memory |
TW200923784A (en) * | 2007-11-16 | 2009-06-01 | Asustek Comp Inc | Electronic device and method for resuming from suspend-to-ram state thereof |
Also Published As
Publication number | Publication date |
---|---|
TW201237756A (en) | 2012-09-16 |
CN102736928A (zh) | 2012-10-17 |
US20120233451A1 (en) | 2012-09-13 |
CN102736928B (zh) | 2015-10-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8140872B1 (en) | Restoring processor context in response to processor power-up | |
TWI528162B (zh) | 電腦系統及其作業系統切換方法 | |
US7325100B2 (en) | Apparatus and method for entering and exiting low power mode | |
KR101957555B1 (ko) | 상시-온 프로세서를 갖는 시스템 온 칩 | |
TWI528284B (zh) | 切換作業系統的方法及使用此方法的電子裝置 | |
US9436251B2 (en) | Fast platform hibernation and resumption of computing systems | |
US7971081B2 (en) | System and method for fast platform hibernate and resume | |
CN109739563B (zh) | 终端的控制方法、装置、系统及存储介质 | |
TWI485623B (zh) | 快速喚醒電腦系統方法與電腦系統 | |
EP2791758B1 (en) | Implementing a power off state in a computing device | |
JP2003085041A (ja) | ディスクキャッシュシステム | |
US10042650B2 (en) | Computer startup method, startup apparatus, state transition method and state transition apparatus | |
TWI605332B (zh) | 使用唯cpu重設的支援先進組態與電力介面(acpi)休眠狀態的方法及裝置 | |
TWI522924B (zh) | 電子裝置及其切換作業系統的方法 | |
JP5913770B2 (ja) | 回転式のディスクを備える記憶装置のパワー・ステートを制御する方法および携帯式コンピュータ | |
JP5764114B2 (ja) | 携帯式コンピュータを省電力状態からレジュームさせる方法、パワー・ステートの制御方法および携帯式コンピュータ | |
JP2014056543A (ja) | ハイブリッド・ディスク・ドライブにデータを記憶する方法および携帯式コンピュータ | |
CN114415820A (zh) | 一种处理器平台的电源管理方法及系统 | |
JPH0588775A (ja) | クロツク切替え方式 |