專利名稱:一種實(shí)現(xiàn)快速開(kāi)機(jī)的方法及裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明屬于計(jì)算機(jī)應(yīng)用技術(shù)領(lǐng)域,尤其涉及一種實(shí)現(xiàn)計(jì)算機(jī)快速開(kāi)機(jī)的方法及裝置。
背景技術(shù):
隨著計(jì)算機(jī)的操作系統(tǒng)的日益龐大,系統(tǒng)的啟動(dòng)時(shí)間越來(lái)越長(zhǎng),盡管計(jì)算機(jī)技術(shù)的飛躍發(fā)展使得計(jì)算機(jī)的處理速度和計(jì)算速度越來(lái)越快,但由于計(jì)算機(jī)處理速度和計(jì)算速度對(duì)縮短系統(tǒng)啟動(dòng)時(shí)間并沒(méi)有明顯的作用,因此使得計(jì)算機(jī)的啟動(dòng)時(shí)間隨著系統(tǒng)的不斷龐大而日益增加。
在本發(fā)明中,涉及到以下的幾個(gè)計(jì)算機(jī)所處狀態(tài),分別是S0狀態(tài),在此狀態(tài)下,計(jì)算機(jī)處于正常開(kāi)機(jī)狀態(tài);S3狀態(tài),在此狀態(tài)下,計(jì)算機(jī)處于掛起到內(nèi)存的休眠狀態(tài),計(jì)算機(jī)將進(jìn)入休眠狀態(tài)之前的計(jì)算機(jī)的各個(gè)現(xiàn)場(chǎng)信息保存在內(nèi)存中,內(nèi)存在+5伏的輔助電壓5VSB供電下保持工作,而其它的硬件則處于關(guān)閉狀態(tài);在觸發(fā)S3休眠喚醒事件時(shí),則計(jì)算機(jī)從內(nèi)存中讀取并執(zhí)行保存的各個(gè)現(xiàn)場(chǎng)信息,從而使計(jì)算機(jī)恢復(fù)至進(jìn)入S3休眠之前的狀態(tài);S4狀態(tài),在此狀態(tài)下,計(jì)算機(jī)處于掛起到硬盤的休眠狀態(tài),計(jì)算機(jī)將進(jìn)入S4休眠前的計(jì)算機(jī)的各個(gè)現(xiàn)場(chǎng)信息保存在硬盤中,計(jì)算機(jī)中的各個(gè)硬件處于關(guān)閉狀態(tài),在通過(guò)例如按動(dòng)電源開(kāi)關(guān)而觸發(fā)S4喚醒事件時(shí),計(jì)算機(jī)通過(guò)操作系統(tǒng)或基本輸入輸出系統(tǒng)(BIOS)將保存在硬盤中的進(jìn)入S4狀態(tài)前的各個(gè)現(xiàn)場(chǎng)信息原樣寫入原先的位置,從而達(dá)到休眠狀態(tài)前后一致;S5狀態(tài),在此狀態(tài)下,計(jì)算機(jī)處于正常關(guān)機(jī)狀態(tài),且外部交流電AC仍然向計(jì)算機(jī)供電;
G3狀態(tài),在此狀態(tài)下,計(jì)算機(jī)的外部交流電AC掉電,只有計(jì)算機(jī)主板上的電池供電。
為了縮短系統(tǒng)啟動(dòng)時(shí)間以為用戶提供快速的開(kāi)機(jī)體驗(yàn),現(xiàn)有技術(shù)中,采用如下兩種方式實(shí)現(xiàn)快速開(kāi)機(jī)方式1將計(jì)算機(jī)電源管理系統(tǒng)的“關(guān)機(jī)”按鈕的默認(rèn)操作設(shè)置為“待機(jī)”,從而,當(dāng)用戶關(guān)機(jī)時(shí),系統(tǒng)將進(jìn)入待機(jī)狀態(tài)S3,計(jì)算機(jī)掛起到內(nèi)存,系統(tǒng)進(jìn)入該S3狀態(tài)時(shí),將計(jì)算機(jī)進(jìn)入S3休眠前的所有信息保存在內(nèi)存中,其中,保存在內(nèi)存中的這些所有信息包括中央處理器(CPU)信息、操作系統(tǒng)信息、應(yīng)用程序信息、各個(gè)硬件信息以及相關(guān)寄存器的值等所有計(jì)算機(jī)現(xiàn)場(chǎng)信息;在該S3狀態(tài)下,計(jì)算機(jī)中的各個(gè)硬件均處于關(guān)閉狀態(tài),只有內(nèi)存仍在+5伏的輔助電壓5VSB供電下不斷進(jìn)行刷新以保證內(nèi)存單元中保存內(nèi)容的完整性。在計(jì)算機(jī)處于開(kāi)機(jī)S0狀態(tài)和正常關(guān)機(jī)S5狀態(tài)時(shí),計(jì)算機(jī)電源連接交流電,5VSB作為輔助電壓均存在。
當(dāng)計(jì)算機(jī)被例如鍵盤喚醒或鼠標(biāo)喚醒的S3休眠喚醒事件觸發(fā)時(shí),計(jì)算機(jī)將內(nèi)存中所保存的各個(gè)現(xiàn)場(chǎng)信息均返回至這些信息在S3休眠狀態(tài)之前所對(duì)應(yīng)的位置,并在對(duì)應(yīng)位置分別執(zhí)行這些信息,從而使計(jì)算機(jī)在經(jīng)S3休眠喚醒事件觸發(fā)后恢復(fù)到S3休眠之前的狀態(tài)。
該種快速開(kāi)機(jī)方式雖然能夠大大縮短開(kāi)機(jī)時(shí)間,但是此種快速開(kāi)機(jī)方式無(wú)法解決系統(tǒng)掉電,也就是通常提供給計(jì)算機(jī)的220V交流電(AC)斷電后的快速開(kāi)機(jī)問(wèn)題,其主要原因在于當(dāng)系統(tǒng)AC掉電后,由于相應(yīng)的5VSB輔助電壓相應(yīng)不存在,因此,計(jì)算機(jī)無(wú)法保持S3狀態(tài),系統(tǒng)將進(jìn)入G3狀態(tài),在該G3狀態(tài)下,除了計(jì)算機(jī)主板上的電池供電外,外部供電均被切斷,在AC恢復(fù)后,系統(tǒng)將進(jìn)入S5狀態(tài),然后再由S5狀態(tài)完成開(kāi)機(jī)過(guò)程,其中,該S5狀態(tài)為計(jì)算機(jī)正常關(guān)機(jī)后所處的狀態(tài),該狀態(tài)不能保存在進(jìn)入該S5狀態(tài)之前的系統(tǒng)狀態(tài)信息,在掉電前保存在內(nèi)存中的信息會(huì)在進(jìn)入該狀態(tài)時(shí)丟失,從而使得在系統(tǒng)AC掉電的情況下,AC恢復(fù)從而重新開(kāi)機(jī)時(shí),仍會(huì)采用歷時(shí)將近40秒的正常開(kāi)機(jī)過(guò)程,從而無(wú)法實(shí)現(xiàn)快速開(kāi)機(jī)。
方式2在計(jì)算機(jī)配置一定的情況下,計(jì)算機(jī)的BIOS減少對(duì)計(jì)算機(jī)中部分部件的初始化動(dòng)作,從而縮短系統(tǒng)的啟動(dòng)時(shí)間;采用此種方案,雖然能夠?qū)崿F(xiàn)快速開(kāi)機(jī),以及系統(tǒng)AC掉電恢復(fù)后的快速開(kāi)機(jī),但是開(kāi)機(jī)過(guò)程中會(huì)減少計(jì)算機(jī)一些部件的初始化動(dòng)作,而這些初始化動(dòng)作在計(jì)算機(jī)進(jìn)入系統(tǒng)后又不可避免的會(huì)被執(zhí)行,必然會(huì)降低系統(tǒng)的運(yùn)行速度,不利于用戶的具體應(yīng)用;另外,該種方式雖然能夠?qū)崿F(xiàn)快速開(kāi)機(jī),但效果不很明顯,相對(duì)于第一種快速開(kāi)機(jī)方式仍需要延遲25~35秒。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明的主要目的在于提供一種實(shí)現(xiàn)快速開(kāi)機(jī)的方法,該方法能夠在AC掉電恢復(fù)后仍然實(shí)現(xiàn)快速開(kāi)機(jī)。
為實(shí)現(xiàn)上述目的,本發(fā)明提供了一種實(shí)現(xiàn)快速開(kāi)機(jī)的方法,如果計(jì)算機(jī)出現(xiàn)系統(tǒng)交流電AC掉電,該方法包括步驟A計(jì)算機(jī)記錄掉電信息,并使計(jì)算機(jī)的操作系統(tǒng)進(jìn)入S4/G3狀態(tài);步驟B判斷AC是否恢復(fù),如果不是,則計(jì)算機(jī)保持S4/G3狀態(tài),返回步驟B,直至AC恢復(fù);如果是,則操作系統(tǒng)自動(dòng)啟動(dòng),并且操作系統(tǒng)在啟動(dòng)過(guò)程中根據(jù)步驟A中所保存的掉電信息,由S4/G3狀態(tài)進(jìn)入S3狀態(tài),然后,計(jì)算機(jī)操作系統(tǒng)保持S3狀態(tài),直至使用者觸發(fā)S3觸發(fā)事件以實(shí)現(xiàn)快速開(kāi)機(jī)。
其中,步驟A所述計(jì)算機(jī)記錄掉電信息包括計(jì)算機(jī)主板收到掉電通知信號(hào),根據(jù)該掉電通知信號(hào)判斷得到計(jì)算機(jī)當(dāng)前出現(xiàn)系統(tǒng)AC掉電,計(jì)算機(jī)主板在由計(jì)算機(jī)主板電池供電的寄存器上記錄數(shù)值,以作為掉電信息。
其中,計(jì)算機(jī)主板具有備用電池供電時(shí),所述掉電通知信號(hào)為備用電池向主板發(fā)送的高電平狀態(tài)的ON-BATT信號(hào),主板根據(jù)該信號(hào)的高電平狀態(tài)判斷得到發(fā)生系統(tǒng)AC掉電,則執(zhí)行所述在寄存器上記錄掉電信息的步驟。
其中,步驟A所述計(jì)算機(jī)記錄掉電信息包括計(jì)算機(jī)主板南橋上空閑的通用輸入輸出GPIO位偵測(cè)接收到的ON-BATT信號(hào),在偵測(cè)得到該信號(hào)處于高電平時(shí),則在主板南橋上由計(jì)算機(jī)主板供電的寄存器中記錄數(shù)值,用以表示計(jì)算機(jī)發(fā)生掉電。
其中,計(jì)算機(jī)主板沒(méi)有備用電池供電時(shí),所述掉電通知信號(hào)為3.3VSB,計(jì)算機(jī)主板根據(jù)該3.3VSB不存在判斷得到發(fā)生系統(tǒng)AC掉電,則執(zhí)行所述在寄存器上記錄掉電信息的步驟。
其中,步驟B中,所述操作系統(tǒng)在啟動(dòng)過(guò)程中根據(jù)步驟A中所保存的掉電信息由S4/G3狀態(tài)進(jìn)入S3狀態(tài)包括步驟B1計(jì)算機(jī)的基本輸入輸出系統(tǒng)BIOS從所述由計(jì)算機(jī)主板電池供電的寄存器中讀取該寄存器所記錄的數(shù)值,根據(jù)該數(shù)值判斷得到計(jì)算機(jī)曾經(jīng)出現(xiàn)系統(tǒng)AC掉電;步驟B2BIOS向操作系統(tǒng)不斷發(fā)出進(jìn)入S3狀態(tài)的指令,直至操作系統(tǒng)收到并響應(yīng)該指令為止,操作系統(tǒng)根據(jù)收到的進(jìn)入S3狀態(tài)的指令進(jìn)入S3狀態(tài)。
其中,在計(jì)算機(jī)主板上有備用電池供電時(shí),步驟A中,計(jì)算機(jī)的操作系統(tǒng)進(jìn)入S4狀態(tài);在計(jì)算機(jī)的主板上沒(méi)有備用電池供電時(shí),步驟A中,計(jì)算機(jī)的操作系統(tǒng)進(jìn)入G3狀態(tài)。
為實(shí)現(xiàn)上述目的,本發(fā)明還提供了一種實(shí)現(xiàn)快速開(kāi)機(jī)的裝置,該裝置至少包括第一脈沖發(fā)生模塊、檢測(cè)模塊、第二脈沖發(fā)生模塊、以及開(kāi)機(jī)信號(hào)產(chǎn)生環(huán)節(jié)模塊,其中第一脈沖發(fā)生模塊用于在收到掉電通知信號(hào)后,產(chǎn)生觸發(fā)休眠的觸發(fā)脈沖并將該脈沖發(fā)送給檢測(cè)模塊,以使得檢測(cè)模塊通過(guò)開(kāi)機(jī)信號(hào)產(chǎn)生環(huán)節(jié)模塊將操作系統(tǒng)引導(dǎo)進(jìn)入S4/G3狀態(tài);檢測(cè)模塊用于在系統(tǒng)AC掉電時(shí),根據(jù)掉電通知信號(hào)記錄掉電信息,還用于在AC恢復(fù)時(shí),根據(jù)記錄的掉電信息向第二脈沖發(fā)生模塊發(fā)送掉電恢復(fù)信號(hào);第二脈沖發(fā)生模塊用于在接收到檢測(cè)模塊所發(fā)送的掉電恢復(fù)信號(hào)后,產(chǎn)生觸發(fā)脈沖并發(fā)送至檢測(cè)模塊,以使得檢測(cè)模塊通過(guò)開(kāi)機(jī)信號(hào)產(chǎn)生環(huán)節(jié)模塊將操作系統(tǒng)由S4/G3狀態(tài)引導(dǎo)進(jìn)入S3狀態(tài);開(kāi)機(jī)信號(hào)產(chǎn)生環(huán)節(jié)模塊用于根據(jù)自檢測(cè)模塊收到的信號(hào),向計(jì)算機(jī)主機(jī)電源發(fā)送開(kāi)啟/關(guān)閉電源的信號(hào)。
其中,所述裝置進(jìn)一步包括備用電池,該備用電池用于在出現(xiàn)AC系統(tǒng)掉電時(shí)向第一脈沖發(fā)生模塊和檢測(cè)模塊發(fā)送作為掉電通知信號(hào)的ON-BATT信號(hào)。
可見(jiàn),利用本發(fā)明所提供的裝置及方法,能夠使得計(jì)算機(jī)發(fā)生AC掉電后,能夠進(jìn)入并保持S3狀態(tài),以使得在使用者通過(guò)觸發(fā)S3觸發(fā)事件時(shí)實(shí)現(xiàn)快速開(kāi)機(jī),從而減少了開(kāi)機(jī)時(shí)進(jìn)入操作系統(tǒng)所歷經(jīng)的時(shí)間。因此,本發(fā)明所提供的方法及裝置有利于避免使用者在系統(tǒng)啟動(dòng)過(guò)程中的漫長(zhǎng)等待,從而為用戶帶來(lái)使用上的便利,并且,本發(fā)明能夠針對(duì)AC掉電這一特殊情況實(shí)現(xiàn)快速開(kāi)機(jī),從而使得本發(fā)明具有更廣的應(yīng)用范圍。
圖1為本發(fā)明實(shí)現(xiàn)快速開(kāi)機(jī)的整體流程圖。
圖2為本發(fā)明在系統(tǒng)AC掉電并恢復(fù)時(shí),實(shí)現(xiàn)快速開(kāi)機(jī)的流程圖。
圖3為本發(fā)明一實(shí)施例中,本發(fā)明所提供的實(shí)現(xiàn)快速開(kāi)機(jī)的裝置的模塊圖。
具體實(shí)施例方式
本發(fā)明為一種實(shí)現(xiàn)快速開(kāi)機(jī)的方法及裝置,在該方法中,當(dāng)計(jì)算機(jī)出現(xiàn)系統(tǒng)AC掉電時(shí),將掉電信息記錄在相應(yīng)的存儲(chǔ)器中,在AC恢復(fù)時(shí),根據(jù)所記錄的掉電信息,計(jì)算機(jī)的操作系統(tǒng)進(jìn)入并保持S3狀態(tài),直至使用者通過(guò)觸發(fā)S3觸發(fā)事件實(shí)現(xiàn)快速開(kāi)機(jī)。在本發(fā)明所提供的裝置中,利用檢測(cè)模塊檢測(cè)AC掉電這一事件,并且,檢測(cè)模塊利用第一脈沖發(fā)生模塊和第二脈沖發(fā)生模塊所產(chǎn)生的脈沖,控制開(kāi)機(jī)信號(hào)產(chǎn)生模塊使計(jì)算機(jī)的操作系統(tǒng)進(jìn)入并保持在S3狀態(tài),從而滿足快速開(kāi)機(jī)的需要。
下面結(jié)合附圖對(duì)本發(fā)明進(jìn)行詳細(xì)描述。
參見(jiàn)圖1,本發(fā)明采用從S3狀態(tài)進(jìn)入操作系統(tǒng)的方式實(shí)現(xiàn)快速開(kāi)機(jī),該快速開(kāi)機(jī)包括以下步驟步驟100根據(jù)使用者的操作,計(jì)算機(jī)的操作系統(tǒng)處于S0、S3、S4和S5狀態(tài)中的任意一種狀態(tài);步驟101操作系統(tǒng)判斷是否出現(xiàn)系統(tǒng)AC掉電,如果是,則執(zhí)行步驟102及其后續(xù)步驟,否則,操作系統(tǒng)保持當(dāng)前狀態(tài),并返回步驟101,直至出現(xiàn)AC掉電執(zhí)行步驟102,或操作系統(tǒng)根據(jù)使用者的操作改變當(dāng)前狀態(tài)后,結(jié)束本流程;步驟102計(jì)算機(jī)記錄AC掉電信息,并在AC恢復(fù)后,使操作系統(tǒng)進(jìn)入并保持S3狀態(tài),在使用者觸發(fā)S3觸發(fā)事件后,由S3狀態(tài)進(jìn)入操作系統(tǒng),從而實(shí)現(xiàn)快速開(kāi)機(jī)。
其中,在本發(fā)明實(shí)施例中,參見(jiàn)圖2,實(shí)現(xiàn)上述步驟102具體包括以下步驟步驟200系統(tǒng)掉電后,該計(jì)算機(jī)記錄掉電信息,在本發(fā)明實(shí)施例中,采用根據(jù)ON-VBA信號(hào)的電平狀態(tài)記錄掉電信息,在主板具有備用電池時(shí),該ON-VBA信號(hào)為備用電池所發(fā)出的ON-BATT信號(hào),而在主板上沒(méi)有備用電池時(shí),該ON-VBA信號(hào)則為主板上的3.3VSB信號(hào),該ON-VBA信號(hào)用以表示是否發(fā)生了AC掉電,系統(tǒng)根據(jù)該ON-VBA信號(hào)來(lái)記錄掉電信息,其具體實(shí)現(xiàn)方式如下方式一,在主板上具有備用電池供電時(shí)計(jì)算機(jī)主板上的備用電池向主板始終發(fā)送一個(gè)掉電通知信號(hào)ON-BATT,該信號(hào)始終處于低電平狀態(tài),只有在計(jì)算機(jī)處于系統(tǒng)AC掉電狀態(tài)時(shí),該ON-BATT信號(hào)才被拉高為高電平狀態(tài),在發(fā)生系統(tǒng)AC掉電時(shí),主板收到該高電平狀態(tài)的ON-BATT信號(hào)后,在主板的寄存器中記錄掉電信息;
方式二,在主板上沒(méi)有備用電池供電時(shí)如果計(jì)算機(jī)發(fā)生AC掉電,則3.3VSB不存在,主板根據(jù)該3.3VSB不存在判斷得到當(dāng)前發(fā)生了系統(tǒng)AC掉電,則在主板的寄存器中記錄掉電信息;其中,3.3VSB是主板上的一種供電電壓,當(dāng)計(jì)算機(jī)在AC插頭仍然連接電源而處于S5狀態(tài)時(shí),3.3VSB存在;而在AC插頭不連接電源使得計(jì)算機(jī)處于G3狀態(tài)時(shí),3.3VSB不存在,因此,本發(fā)明采用該3.3VSB信號(hào)作為判斷AC是否掉電的一個(gè)的信號(hào);在本發(fā)明實(shí)施例中,主板上具有備用電池供電,因此,本發(fā)明實(shí)施例采用上述的方式一實(shí)現(xiàn)記錄掉電信息,其具體實(shí)現(xiàn)為主板南橋上空閑的通用輸入輸出(GPIO)位偵測(cè)接收到的ON-BATT信號(hào),當(dāng)偵測(cè)到該信號(hào)處于高電平時(shí),則在主板南橋上的相應(yīng)寄存器中記錄下相應(yīng)的值,本發(fā)明實(shí)施例中,如果偵測(cè)到ON-BATT信號(hào)處于高電平,則在主板南橋的M-BATT寄存器中記錄1,用以表示系統(tǒng)的前一個(gè)狀態(tài)有過(guò)掉電記錄,相應(yīng)的,該M-BATT寄存器中記錄0則表示系統(tǒng)AC供電正常;在本發(fā)明的各個(gè)實(shí)施例中,可以采用主板上不同的寄存器記錄掉電信息,但所采用的寄存器必須為計(jì)算機(jī)主板電池供電的寄存器,該寄存器能夠在S3、S4、S5以及G3狀態(tài)下保證存儲(chǔ)在其上的值不丟失,以供再次啟動(dòng)開(kāi)機(jī)時(shí)BIOS查詢?cè)摷拇嫫髦兴涗浀牡綦娦畔?;在本發(fā)明其它實(shí)施例中,也可采用其它不同的數(shù)值記錄在相應(yīng)的寄存器中,以表示系統(tǒng)的掉電情況,該寄存器中所記錄的數(shù)值以及各個(gè)數(shù)值與掉電狀態(tài)的對(duì)應(yīng)關(guān)系并不影響本發(fā)明的實(shí)現(xiàn);步驟201計(jì)算機(jī)在掉電后,進(jìn)入S4/G3狀態(tài),在本發(fā)明實(shí)施例中,由于主板上有備用電池模塊供電,因此,本步驟中,計(jì)算機(jī)進(jìn)入S4狀態(tài),在本發(fā)明其它實(shí)施例中,如果沒(méi)有主板上的備用電池供電,則該計(jì)算機(jī)選擇進(jìn)入G3狀態(tài);其中,S4是指計(jì)算機(jī)掛起到硬盤的狀態(tài),而不像S3狀態(tài)那樣掛起到內(nèi)存的狀態(tài),計(jì)算機(jī)在進(jìn)入S4狀態(tài)時(shí),將進(jìn)入S4休眠前的所有計(jì)算機(jī)現(xiàn)場(chǎng)信息保存在硬盤中,在該S4狀態(tài)下,計(jì)算機(jī)中的硬件處于關(guān)閉狀態(tài),如果用戶通過(guò)例如按動(dòng)電源開(kāi)關(guān)而觸發(fā)S4喚醒條件,計(jì)算機(jī)則通過(guò)操作系統(tǒng)或BIOS將保存在硬盤中的S4狀態(tài)前的所有計(jì)算機(jī)現(xiàn)場(chǎng)信息原樣寫入原先的位置,從而達(dá)到休眠狀態(tài)前后一致;步驟202判斷AC是否恢復(fù),如果是,則執(zhí)行步驟203及后續(xù)步驟,否則,返回步驟201,使得計(jì)算機(jī)保持S4/G3狀態(tài),直至AC恢復(fù)后執(zhí)行步驟203及其后續(xù)步驟;步驟203~步驟204系統(tǒng)根據(jù)在BIOS中的預(yù)先設(shè)定,在AC恢復(fù)后自動(dòng)啟動(dòng),在系統(tǒng)啟動(dòng)的過(guò)程中,BIOS查詢?cè)诓襟E200中的掉電記錄,以判斷該計(jì)算機(jī)是否曾經(jīng)掉電,如果是,則執(zhí)行步驟205及其后續(xù)步驟,否則,執(zhí)行步驟208;在本發(fā)明實(shí)施例中,BIOS從M-BATT寄存器中讀取所記錄的數(shù)值,如果該數(shù)值為1,則判斷得到計(jì)算機(jī)曾經(jīng)掉電,如果該數(shù)值為0,則判斷得到該計(jì)算機(jī)不曾掉電;步驟205~步驟207BIOS向系統(tǒng)發(fā)出進(jìn)入S3狀態(tài)的指令,系統(tǒng)收到并響應(yīng)該指令,然后,該系統(tǒng)進(jìn)入S3狀態(tài),使用者觸發(fā)S3狀態(tài)觸發(fā)事件后,計(jì)算機(jī)根據(jù)觸發(fā)事件進(jìn)入操作系統(tǒng),以結(jié)束快速開(kāi)機(jī)的流程;從而,使得計(jì)算機(jī)在AC掉電恢復(fù)后進(jìn)入并保持S3狀態(tài),使用者通過(guò)出發(fā)S3觸發(fā)事件即可喚醒系統(tǒng),從而達(dá)到快速啟動(dòng)的目的;在本發(fā)明實(shí)施例中,采用計(jì)算機(jī)主板南橋上的GPIO信號(hào)觸發(fā)開(kāi)機(jī)(POWERBT)信號(hào),以該P(yáng)OWERBT作為BIOS向系統(tǒng)發(fā)出的進(jìn)入S3狀態(tài)的指令,系統(tǒng)收到該指令后進(jìn)入S3狀態(tài);步驟208在BIOS通過(guò)查詢判斷得到該計(jì)算機(jī)未曾掉電后,BIOS引導(dǎo)系統(tǒng)進(jìn)入S5狀態(tài),然后在執(zhí)行步驟207,BIOS根據(jù)使用者例如按動(dòng)開(kāi)機(jī)按鈕的觸發(fā)動(dòng)作,引導(dǎo)系統(tǒng)由S5狀態(tài)進(jìn)入操作系統(tǒng);本步驟208的內(nèi)容為本領(lǐng)域技術(shù)人員無(wú)需創(chuàng)造性勞動(dòng)即可實(shí)現(xiàn)的內(nèi)容,且BIOS通過(guò)S5狀態(tài)進(jìn)入操作系統(tǒng)不屬于快速開(kāi)機(jī)的范疇之內(nèi),本流程中包括該步驟僅為該流程的實(shí)現(xiàn)更加嚴(yán)謹(jǐn),不應(yīng)認(rèn)為該步驟是實(shí)現(xiàn)本發(fā)明所述快速開(kāi)機(jī)的必要步驟。
參見(jiàn)圖3,為了實(shí)現(xiàn)以上圖2所示的AC斷電后的快速開(kāi)機(jī)過(guò)程,本發(fā)明采用圖3所示的電路裝置來(lái)實(shí)現(xiàn)快速開(kāi)機(jī),該電路裝置具體包括第一脈沖發(fā)生模塊301、檢測(cè)模塊302、第二脈沖發(fā)生模塊303、開(kāi)機(jī)信號(hào)產(chǎn)生環(huán)節(jié)模塊304以及備用電池305,其中如果計(jì)算機(jī)出現(xiàn)系統(tǒng)AC掉電的情況,則備用電池305立即啟動(dòng)并向第一脈沖產(chǎn)生模塊301發(fā)送高電位的ON-BATT信號(hào),第一脈沖產(chǎn)生模塊301收到該ON-BATT信號(hào)后,產(chǎn)生一個(gè)用于觸發(fā)休眠的觸發(fā)脈沖SLEEPSW+,并將該觸發(fā)脈沖發(fā)送給檢測(cè)模塊302;檢測(cè)模塊302收到該SLEEPSW+后,根據(jù)從備用電池305所接收的ON-BATT信號(hào)記錄掉電信息,同時(shí),檢測(cè)模塊302向開(kāi)機(jī)信號(hào)產(chǎn)生環(huán)節(jié)模塊304發(fā)出開(kāi)機(jī)請(qǐng)求信號(hào)PWROK,開(kāi)機(jī)信號(hào)產(chǎn)生環(huán)節(jié)模塊304收到該P(yáng)WROK信號(hào)后,發(fā)出主機(jī)電源開(kāi)啟信號(hào)PS-ON#,從而開(kāi)啟主機(jī)電源,使操作系統(tǒng)自動(dòng)進(jìn)入S4狀態(tài);當(dāng)AC恢復(fù)時(shí),檢測(cè)模塊302會(huì)檢測(cè)到AC已經(jīng)恢復(fù),該檢測(cè)模塊302通過(guò)開(kāi)機(jī)信號(hào)產(chǎn)生環(huán)節(jié)模塊304開(kāi)啟主機(jī)電源,使系統(tǒng)從S4狀態(tài)喚醒;系統(tǒng)從S4狀態(tài)喚醒后,在自檢過(guò)程中檢測(cè)模塊302根據(jù)所保存的掉電信息判斷是否曾經(jīng)發(fā)生掉電,如果發(fā)現(xiàn)系統(tǒng)曾經(jīng)掉電,則會(huì)在進(jìn)入操作系統(tǒng)后由檢測(cè)模塊302不斷發(fā)出AC-UP信號(hào)給第二脈沖產(chǎn)生模塊303,第二脈沖產(chǎn)生模塊303收到該AC-UP信號(hào)后,不斷產(chǎn)生表示交流電恢復(fù)的觸發(fā)脈沖PWRBT#,并將該觸發(fā)脈沖發(fā)送給檢測(cè)模塊302,檢測(cè)模塊302收到該脈沖后,不斷向開(kāi)機(jī)信號(hào)產(chǎn)生環(huán)節(jié)模塊304發(fā)出開(kāi)機(jī)請(qǐng)求PWROK,開(kāi)機(jī)信號(hào)產(chǎn)生環(huán)節(jié)模塊304將計(jì)算機(jī)掛起到內(nèi)存,從而使系統(tǒng)進(jìn)入S3狀態(tài);利用圖3所示電路,能夠使得計(jì)算機(jī)始終保持在S3狀態(tài),在使用者觸發(fā)S3觸發(fā)事件后能夠使計(jì)算機(jī)快速進(jìn)入操作系統(tǒng),從而實(shí)現(xiàn)快速開(kāi)機(jī);其中,在本發(fā)明其它實(shí)施例中,本發(fā)明所提供的用于實(shí)現(xiàn)快速開(kāi)機(jī)的電路裝置可不具有備用電池,并不影響本發(fā)明的實(shí)現(xiàn);在這些實(shí)施例中,檢測(cè)模塊以及第一脈沖發(fā)生模塊根據(jù)主板上的3.3VSB判斷是否發(fā)生系統(tǒng)AC掉電,并在發(fā)生系統(tǒng)AC掉電時(shí)記錄掉電信息,使操作系統(tǒng)進(jìn)入G3狀態(tài),在AC恢復(fù)時(shí),檢測(cè)模塊、第二脈沖發(fā)生模塊以及開(kāi)機(jī)信號(hào)產(chǎn)生環(huán)節(jié)模塊使系統(tǒng)由G3狀態(tài)進(jìn)入并保持在S3狀態(tài),以在使用者觸發(fā)S3觸發(fā)事件時(shí)實(shí)現(xiàn)快速開(kāi)機(jī)。
以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1.一種實(shí)現(xiàn)快速開(kāi)機(jī)的方法,其特征在于,如果計(jì)算機(jī)出現(xiàn)系統(tǒng)交流電AC掉電,該方法包括步驟A計(jì)算機(jī)記錄掉電信息,并使計(jì)算機(jī)的操作系統(tǒng)進(jìn)入S4/G3狀態(tài);步驟B判斷AC是否恢復(fù),如果不是,則計(jì)算機(jī)保持S4/G3狀態(tài),返回步驟B,直至AC恢復(fù);如果是,則操作系統(tǒng)自動(dòng)啟動(dòng),并且操作系統(tǒng)在啟動(dòng)過(guò)程中根據(jù)步驟A中所保存的掉電信息,由S4/G3狀態(tài)進(jìn)入S3狀態(tài),然后,計(jì)算機(jī)操作系統(tǒng)保持S3狀態(tài),直至使用者觸發(fā)S3觸發(fā)事件以實(shí)現(xiàn)快速開(kāi)機(jī)。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,步驟A所述計(jì)算機(jī)記錄掉電信息包括計(jì)算機(jī)主板收到掉電通知信號(hào),根據(jù)該掉電通知信號(hào)判斷得到計(jì)算機(jī)當(dāng)前出現(xiàn)系統(tǒng)AC掉電,計(jì)算機(jī)主板在由計(jì)算機(jī)主板電池供電的寄存器上記錄數(shù)值,以作為掉電信息。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,計(jì)算機(jī)主板具有備用電池供電時(shí),所述掉電通知信號(hào)為備用電池向主板發(fā)送的高電平狀態(tài)的ON-BATT信號(hào),主板根據(jù)該信號(hào)的高電平狀態(tài)判斷得到發(fā)生系統(tǒng)AC掉電,則執(zhí)行所述在寄存器上記錄掉電信息的步驟。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,步驟A所述計(jì)算機(jī)記錄掉電信息包括計(jì)算機(jī)主板南橋上空閑的通用輸入輸出GPIO位偵測(cè)接收到的ON-BATT信號(hào),在偵測(cè)得到該信號(hào)處于高電平時(shí),則在主板南橋上由計(jì)算機(jī)主板供電的寄存器中記錄數(shù)值,用以表示計(jì)算機(jī)發(fā)生掉電。
5.根據(jù)權(quán)利要求2所述的方法,其特征在于,計(jì)算機(jī)主板沒(méi)有備用電池供電時(shí),所述掉電通知信號(hào)為3.3VSB,計(jì)算機(jī)主板根據(jù)該3.3VSB不存在判斷得到發(fā)生系統(tǒng)AC掉電,則執(zhí)行所述在寄存器上記錄掉電信息的步驟。
6.根據(jù)權(quán)利要求2所述的方法,其特征在于,步驟B中,所述操作系統(tǒng)在啟動(dòng)過(guò)程中根據(jù)步驟A中所保存的掉電信息由S4/G3狀態(tài)進(jìn)入S3狀態(tài)包括步驟B1計(jì)算機(jī)的基本輸入輸出系統(tǒng)BIOS從所述由計(jì)算機(jī)主板電池供電的寄存器中讀取該寄存器所記錄的數(shù)值,根據(jù)該數(shù)值判斷得到計(jì)算機(jī)曾經(jīng)出現(xiàn)系統(tǒng)AC掉電;步驟B2BIOS向操作系統(tǒng)不斷發(fā)出進(jìn)入S3狀態(tài)的指令,直至操作系統(tǒng)收到并響應(yīng)該指令為止,操作系統(tǒng)根據(jù)收到的進(jìn)入S3狀態(tài)的指令進(jìn)入S3狀態(tài)。
7.根據(jù)權(quán)利要求1所述的方法,其特征在于,在計(jì)算機(jī)主板上有備用電池供電時(shí),步驟A中,計(jì)算機(jī)的操作系統(tǒng)進(jìn)入S4狀態(tài);在計(jì)算機(jī)的主板上沒(méi)有備用電池供電時(shí),步驟A中,計(jì)算機(jī)的操作系統(tǒng)進(jìn)入G3狀態(tài)。
8.一種實(shí)現(xiàn)快速開(kāi)機(jī)的裝置,其特征在于,該裝置至少包括第一脈沖發(fā)生模塊、檢測(cè)模塊、第二脈沖發(fā)生模塊、以及開(kāi)機(jī)信號(hào)產(chǎn)生環(huán)節(jié)模塊,其中第一脈沖發(fā)生模塊用于在收到掉電通知信號(hào)后,產(chǎn)生觸發(fā)休眠的觸發(fā)脈沖并將該脈沖發(fā)送給檢測(cè)模塊,以使得檢測(cè)模塊通過(guò)開(kāi)機(jī)信號(hào)產(chǎn)生環(huán)節(jié)模塊將操作系統(tǒng)引導(dǎo)進(jìn)入S4/G3狀態(tài);檢測(cè)模塊用于在系統(tǒng)AC掉電時(shí),根據(jù)掉電通知信號(hào)記錄掉電信息,還用于在AC恢復(fù)時(shí),根據(jù)記錄的掉電信息向第二脈沖發(fā)生模塊發(fā)送掉電恢復(fù)信號(hào);第二脈沖發(fā)生模塊用于在接收到檢測(cè)模塊所發(fā)送的掉電恢復(fù)信號(hào)后,產(chǎn)生觸發(fā)脈沖并發(fā)送至檢測(cè)模塊,以使得檢測(cè)模塊通過(guò)開(kāi)機(jī)信號(hào)產(chǎn)生環(huán)節(jié)模塊將操作系統(tǒng)由S4/G3狀態(tài)引導(dǎo)進(jìn)入S3狀態(tài);開(kāi)機(jī)信號(hào)產(chǎn)生環(huán)節(jié)模塊用于根據(jù)自檢測(cè)模塊收到的信號(hào),向計(jì)算機(jī)主機(jī)電源發(fā)送開(kāi)啟/關(guān)閉電源的信號(hào)。
9.根據(jù)權(quán)利要求8所述的裝置,其特征在于,所述裝置進(jìn)一步包括備用電池,該備用電池用于在出現(xiàn)AC系統(tǒng)掉電時(shí)向第一脈沖發(fā)生模塊和檢測(cè)模塊發(fā)送作為掉電通知信號(hào)的ON-BATT信號(hào)。
全文摘要
本發(fā)明為一種實(shí)現(xiàn)快速開(kāi)機(jī)的方法及裝置,該方法的關(guān)鍵在于計(jì)算機(jī)如果出現(xiàn)交流電AC掉電,通過(guò)以下步驟實(shí)現(xiàn)快速開(kāi)機(jī)步驟A計(jì)算機(jī)記錄掉電信息,并使計(jì)算機(jī)的操作系統(tǒng)進(jìn)入S4/G3狀態(tài);步驟B判斷AC是否恢復(fù),如果不是,則計(jì)算機(jī)保持S4/G3狀態(tài),返回步驟B,直至AC恢復(fù);如果是,則操作系統(tǒng)自動(dòng)啟動(dòng),并且操作系統(tǒng)在啟動(dòng)過(guò)程中根據(jù)步驟A中所保存的掉電信息,由S4/G3狀態(tài)進(jìn)入S3狀態(tài),然后,計(jì)算機(jī)操作系統(tǒng)保持S3狀態(tài),直至使用者觸發(fā)S3觸發(fā)事件以實(shí)現(xiàn)快速開(kāi)機(jī)。本發(fā)明所提供的裝置能夠偵測(cè)AC掉電并能保存掉電信息,根據(jù)掉電信息能夠使計(jì)算機(jī)保持S3狀態(tài),以滿足快速開(kāi)機(jī)的需要。
文檔編號(hào)G06F9/445GK1641573SQ200410000590
公開(kāi)日2005年7月20日 申請(qǐng)日期2004年1月15日 優(yōu)先權(quán)日2004年1月15日
發(fā)明者姜軍紅, 李曉龍 申請(qǐng)人:聯(lián)想(北京)有限公司