TWI454936B - 開機方法 - Google Patents
開機方法 Download PDFInfo
- Publication number
- TWI454936B TWI454936B TW100119976A TW100119976A TWI454936B TW I454936 B TWI454936 B TW I454936B TW 100119976 A TW100119976 A TW 100119976A TW 100119976 A TW100119976 A TW 100119976A TW I454936 B TWI454936 B TW I454936B
- Authority
- TW
- Taiwan
- Prior art keywords
- power
- electronic device
- register
- preset value
- value
- Prior art date
Links
Landscapes
- Stored Programmes (AREA)
Description
本發明是有關於一種開機方法,且特別是有關於一種電子裝置在斷電再復電後之開機方法。
由於電子科技的發達,電腦及各種資訊數位化設備乃日益普及,而為了達到資源共享的目的,網路乃成為資訊交換的必要配置。而在網路通訊發達的今日,很多的電腦產品均會設計具備網路通訊的功能,而且常常都會支援網路喚醒的功能。
網路喚醒(Wake on LAN,WOL)是一種技術,同時也是此技術的規範標準,其功效在於讓已經進入休眠狀態或關機狀態的電腦,透過網路的另一端對其發送命令,使其從休眠狀態喚醒、恢復成運作狀態,或從關機狀態轉成開機狀態。此外,與網路喚醒的相關技術也包括遠端下令關機、遠端下令重新開機等相關的遙控機制。
然而,倘若電腦在斷電又復電之後,其網路喚醒機制便會失效,導致遠端的使用者無法利用網路來將其喚醒。
本發明提供一種開機方法,可防止斷電後遠端喚醒功能失效。
本發明提出一種開機方法,適用於電子裝置。在此,判斷第一暫存器的值是否等於第一預設值。倘若第一暫存器的值不等於第一預設值,執行開機自我測試(Power On Self Test,POST)程序以載入作業系統。倘若第一暫存器的值等於第一預設值,判斷電子裝置的電源是否為斷電後再復電。倘若電源為斷電之後再復電,初始化控制晶片並致能控制晶片的遠端喚醒功能。而在致能遠端喚醒功能之後,判斷第二暫存器是否等於第二預設值。倘若第二暫存器的值等於第二預設值,將電子裝置開機。另一方面,倘若第二暫存器的值不等於第二預設值,將電子裝置關機。
在本發明之一實施例中,倘若上述第一暫存器的值不等於第一預設值,則執行POST程序以載入作業系統的步驟中,更可在第一暫存器中寫入第一預設值,而在第二暫存器中寫入第二預設值。
在本發明之一實施例中,倘若上述第一暫存器的值等於第一預設值,且上述電源為斷電之後再復電,在第一暫存器中寫入第三預設值。另外,在致能遠端喚醒功能之後,還可讀取電源管理項目,以決定電子裝置的運轉狀態為開機狀態或關機狀態或恢復至斷電前的運轉狀態。當判定將電子裝置恢復至斷電前的運轉狀態時,則判斷第二暫存器的值是否等於第二預設值。另外,當判定電子裝置的運轉狀態為關機狀態時,寫入第一預設值至第一暫存器,並且寫入第四預設值至第二暫存器,之後將電子裝置關機。此外,當判定電子裝置的運轉狀態為開機狀態時,則將電子裝置重新開機。
在本發明之一實施例中,倘若上述第二暫存器的值不等於第二預設值,則在將電子裝置關機之前,於第一暫存器中寫入第一預設值。
在本發明之一實施例中,倘若上述第一暫存器的值等於第一預設值,判斷電子裝置的電源是否為斷電後再復電之後,倘若電源為斷電之後再復電,則執行POST程序以載入作業系統。
基於上述,本發明在斷電又復電之後,先開機至控制晶片,將遠端喚醒功能致能。據此,可避免斷電之後遠端喚醒功能失效,而在復電之後遠端使用者無法進行遠端喚醒之情形。
為讓本發明之上述特徵和優點能更明顯易懂,下文特舉實施例,並配合所附圖式作詳細說明如下。
一般而言,電子裝置在斷電又復電之後,其網路喚醒功能便會失效,導致遠端的使用者無法利用網路來將其喚醒。為此,本發明提出一種開機方法,可防止斷電後遠端喚醒功能失效。為了使本發明之內容更為明瞭,以下特舉實施例作為本發明確實能夠據以實施的範例。
圖1是依照本發明一實施例所繪示的電子裝置的方塊圖。請參照圖1,電子裝置100包括中央處理單元110、控制晶片120以及韌體記憶體130。其中,控制晶片120分別耦接至中央處理單元110及韌體記憶體130。在此,控制晶片120例如是南橋(South Bridge,NB),韌體記憶體例如為快閃記憶體(flash memory)或唯讀記憶體(Read-Only Memory,ROM),而在韌體記憶體130中儲存有一開機韌體。開機韌體例如為基本輸入輸出系統(Basic Input Output System,BIOS)。
在電子裝置100插上電源時,控制晶片120會接收到待機電壓。此時,控制晶片120雖未打開全部電源,但仍可啟動部分功能,使得中央處理單元110執行韌體記憶體130中的開機韌體,而透過開機韌體來執行部分初始化程序。例如,開機韌體初始化至控制晶片120之後即停止後續的初始化程序。之後,將控制晶片120的遠端喚醒功能致能。而在致能將控制晶片120的遠端喚醒功能之後,可直接關機,而在電源按鈕被按下之後再開機以載入作業系統。另外,在致能將控制晶片120的遠端喚醒功能之後,更可進一步判斷斷電前電子裝置100的運轉狀態以判斷是否要將電子裝置100開機或關機。
以下再舉一實施例來說明開機方法的各步驟。圖2是依照本發明一實施例所繪示的開機方法的流程圖。在本實施例中,當電子裝置100通電時會啟動中央處理單元110來執行韌體記憶體130中的開機韌體(在此為BIOS),而由BIOS來執行此開機方法。在此,利用第一暫存器來判斷是否要直接將電子裝置100開機,並且利用第二暫存器來判斷電子裝置100斷電前的運轉狀態為開機狀態或關機狀態。
請參照圖1及圖2,在步驟S205中,判斷第一暫存器的值是否等於第一預設值。倘若第一暫存器的值不等於第一預設值,執行步驟S210,執行開機自我測試(Power On Self Test,POST)以載入作業系統。也就是說,倘若第一暫存器的值不等於第一預設值,則將電子裝置100直接開機。舉例來說,在產線第一次開機時,電子裝置100內部的各個暫存器皆尚未設定,此時第一暫存器為空值(Null)。因此在中央處理單元110啟動時,會直接將電子裝置100開機以設定各個暫存器。例如,可在步驟S210中,將第一預設值至寫入至第一暫存器,並且將第二預設值寫入至第二暫存器。
返回步驟S205,倘若第一暫存器的值等於第一預設值,表示電子裝置100並非為第一次開機,有可能為在開機狀態時電源斷電再復電,或者是由使用者按下電源鍵(Power On Button)。故,執行步驟S215,判斷電子裝置100的電源是否為斷電後再復電。倘若為斷電之後再復電,執行步驟S220,初始化控制晶片。一般而言,在電子裝置100一接上電源之後南橋會接收到一待機電壓,這時候,便可藉由此待機電壓來驅動中央處理單元110執行BIOS以執行部分的POST程序。例如,以控制晶片120為南橋而言,在本實施例中,POST程序僅執行至南橋的初始化程序,並且在週邊組件互連(Peripheral Component Interconnect,PCI)裝置的初始化程序之前便會停止。
接著,在步驟S225中,致能控制晶片120的遠端喚醒功能。遠端喚醒功能例如為網路喚醒(Wake on LAN,WOL)功能。斷電時,遠端喚醒功能會被禁能。而為了在復電後遠端使用者仍可透過網路喚醒來喚醒電子裝置100,因此,當判定電子裝置100為斷電後再復電時,便可先將控制晶片120初始化,使得控制晶片120的遠端喚醒功能能夠被致能。
舉例來說,以現有技術而言,BIOS的設定值一般是儲存在南橋的互補式金氧半導體元件(Complementary Metal-Oxide Semiconductor Device,CMOS)中,而在斷電之後,遠端喚醒功能的設定會被清除。因此在本實施例中,當電子裝置100斷電再復電之後,BIOS會至CMOS中將遠端喚醒功能致能。並且,將控制晶片120中用以控制遠端喚醒功能的針腳(例如,通用輸入輸出(General Purpose Input Output,GPIO)針腳)致能。
接著,在步驟S230中,判斷第二暫存器的值是否等於第二預設值。在此,利用第二暫存器表示斷電前電子裝置100的運轉狀態為開機狀態或關機狀態。若第二暫存器的值等於第二預設值,表示斷電前電子裝置100為開機狀態。據此,將電子裝置100開機,如步驟S210所示,執行POST程序以載入作業系統。反之,若第二暫存器的值不等於第二預設值,表示斷電前電子裝置100為關機狀態,執行步驟S240,將電子裝置100關機(例如,發出一關機訊號)。
另外,倘若判定電子裝置100的電源為斷電之後再復電,還可在第一暫存器中寫入第三預設值,以作為之後重新開機時的判斷依據。例如,將電子裝置100重新開機,而重新執行步驟S205時,由於第一暫存器的值為第三預設值,故,會執行步驟S210來直接開機。
此外,在致能該遠端喚醒功能之後,更可讀取電源管理項目,以決定電子裝置100的運轉狀態為開機狀態或關機狀態或恢復至斷電前的運轉狀態。在本實施例中,電源管理項目設定為將電子裝置100恢復至斷電前的運轉狀態。
在其他實施例中,當電源管理項目設定為在致能遠端喚醒功能之後的運轉狀態為開機狀態時,可發出一重新開機訊號將電子裝置100重新開機,以重新執行步驟S205。此時,由於第一暫存器的值為第三預設值,故,會執行步驟S210來直接開機。另一方面,當電源管理項目設定為在致能遠端喚醒功能之後的運轉狀態為關機狀態時,便將第一預設值重新寫入至第一暫存器,並且寫入第四預設值至第二暫存器,再發出一關機訊號以將電子裝置100關機。據此,在使用者按下電源鍵而由BIOS執行步驟S205時,由於第一暫存器的值等於第一預設值(非產線第一次開機),因而會執行步驟S215來判斷電子裝置100是否為斷電後復電,或者是電源鍵被按下。
底下再舉一實施例來詳加說明電子裝置100的開機方法。假設第一暫存器為Reg50,第二暫存器為Reg51,第一預設值為0x55,第二預設值為0x77,第三預設值為0xAA,第四預設值為0x88。
圖3是依照本發明另一實施例所繪示之開機方法的流程圖。請同時參照圖1及圖3,在步驟S305中,判斷Reg50的值是否等於0x55。倘若Reg50的值不等於0x55,執行步驟S310,寫入0x55至Reg50。並且,執行步驟S315,寫入0x77至Reg51。之後,執行步驟S320,執行POST程序以載入作業系統。在此,可先設定Reg50與Reg51之後再執行POST程序。而在其他實施例中,亦可在執行POST程序時來設定Reg50與Reg51的值。
返回步驟S305,倘若Reg50的值等於0x55,執行步驟S325,判斷此時是否為斷電後再復電。若否,執行步驟S310~S320而直接開機;若是,執行步驟S330與步驟S335,初始化控制晶片並致能控制晶片的遠端喚醒功能。之後,在步驟S340中,寫入0xAA至Reg50。
接著,在步驟S345中,讀取電源管理項目,以決定電子裝置100的運轉狀態。在此,電源管理項目用以設定在致能遠端喚醒功能之後電子裝置100的運轉狀態,此運轉狀態包括開機狀態以及關機狀態。例如,電源管理項目可包括三個選項,開機狀態、關機狀態以及恢復至斷電前的運轉狀態。
當電源管理項目設定為開機狀態時,執行步驟S350,將電子裝置100重新開機,以重新執行步驟S305。此時,Reg50等於0xAA,因此BIOS會執行步驟S310~S320完整地執行POST程序之後,載入作業系統。當電源管理項目設定為關機狀態時,執行步驟S355及步驟S360,寫入0×55至Reg50,並寫入0×88至Reg51。之後,執行步驟S365,將電子裝置100關機。
當電源管理項目設定為將電子裝置100恢復至斷電前的運轉狀態時,如步驟S370所示,判斷Reg51的值是否等於0×77。倘若Reg51的值不等於0×77,表示在斷電前電子裝置100的運轉狀態為關機狀態。接著,執行步驟S375,寫入0×55至Reg50。之後,執行步驟S365。倘若Reg51的值等於0×77,表示在斷電前電子裝置100的運轉狀態為開機狀態,因此返回執行步驟S320,執行POST程序以載入作業系統而將電子裝置100開機。
值得注意的是,當電子裝置100在正常關機時,會在Reg51中寫入0×88。據此,倘若斷電後再復電,則可由Reg51中的值來得知電子裝置100在斷電前為關機狀態,以在將遠端喚醒功能致能之後,將電子裝置100關機。
綜上所述,在斷電又復電之後,先開機至控制晶片,將遠端喚醒功能致能。據此,可避免斷電之後遠端喚醒功能失效,而在復電之後遠端使用者無法進行遠端喚醒之情形。另外,更可在復電之後,依據電子裝置在斷電前的運轉狀態來決定是否要將電子裝置開機,據以節省重新按下電源按鈕之時間。
雖然本發明已以實施例揭露如上,然其並非用以限定本發明,任何所屬技術領域中具有通常知識者,在不脫離本發明之精神和範圍內,當可作些許之更動與潤飾,故本發明之保護範圍當視後附之申請專利範圍所界定者為準。
100...電子裝置
110...中央處理單元
120...控制晶片
130...韌體記憶體
S205~S240...本發明一實施例之開機方法各步驟
S305~S375...本發明一實施例之在致能遠端喚醒功能之後,判斷將電子裝置開機或關機的方法各步驟
圖1是依照本發明一實施例所繪示的電子裝置的方塊圖。
圖2是依照本發明一實施例所繪示的開機方法的流程圖。
圖3是依照本發明一實施例所繪示之在致能遠端喚醒功能之後,判斷將電子裝置開機或關機的方法流程圖。
S205~S240...本發明一實施例之開機方法各步驟
Claims (8)
- 一種開機方法,適用於一電子裝置,該開機方法包括:判斷一第一暫存器的值是否等於一第一預設值;倘若該第一暫存器的值不等於該第一預設值,執行一開機自我測試程序以載入一作業系統;倘若該第一暫存器的值等於該第一預設值,判斷該電子裝置的電源是否為斷電後再復電;倘若該電源為斷電之後再復電,初始化一控制晶片並致能該控制晶片的一遠端喚醒功能;以及在致能該遠端喚醒功能之後,判斷一第二暫存器是否等於一第二預設值;倘若該第二暫存器的值等於該第二預設值,將該電子裝置開機;以及倘若該第二暫存器的值不等於該第二預設值,將該電子裝置關機;其中倘若該第一暫存器的值不等於該第一預設值,執行該開機自我測試程序以載入該作業系統的步驟,更包括:寫入該第一預設值至該第一暫存器;以及寫入該第二預設值至該第二暫存器。
- 如申請專利範圍第1項所述之開機方法,其中倘若該電源為斷電之後再復電,更包括:寫入一第三預設值至該第一暫存器。
- 如申請專利範圍第2項所述之開機方法,其中在致 能該遠端喚醒功能之後,更包括:讀取一電源管理項目,以決定該電子裝置的運轉狀態為一開機狀態或一關機狀態或恢復至斷電前的運轉狀態。
- 如申請專利範圍第2項所述之開機方法,其中當判定將該電子裝置恢復至斷電前的運轉狀態時,包括:判斷該第二暫存器的值是否等於該第二預設值。
- 如申請專利範圍第2項所述之開機方法,其中當判定該電子裝置的運轉狀態為該關機狀態時,包括:寫入該第一預設值至該第一暫存器;寫入一第四預設值至該第二暫存器;以及將該電子裝置關機。
- 如申請專利範圍第2項所述之開機方法,其中當判定該電子裝置的運轉狀態為該開機狀態時,將該電子裝置重新開機。
- 如申請專利範圍第1項所述之開機方法,其中倘若該第二暫存器的值不等於該第二預設值,更包括:在將電子裝置關機之前,寫入該第一預設值至該第一暫存器。
- 如申請專利範圍第1項所述之開機方法,其中倘若該第一暫存器的值等於該第一預設值,判斷該電子裝置的電源是否為斷電後再復電的步驟之後,更包括:倘若該電源為斷電之後再復電,執行該開機自我測試程序以載入該作業系統。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW100119976A TWI454936B (zh) | 2011-06-08 | 2011-06-08 | 開機方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW100119976A TWI454936B (zh) | 2011-06-08 | 2011-06-08 | 開機方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201250483A TW201250483A (en) | 2012-12-16 |
TWI454936B true TWI454936B (zh) | 2014-10-01 |
Family
ID=48139271
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW100119976A TWI454936B (zh) | 2011-06-08 | 2011-06-08 | 開機方法 |
Country Status (1)
Country | Link |
---|---|
TW (1) | TWI454936B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW374870B (en) * | 1998-08-26 | 1999-11-21 | Asustek Comp Inc | UPS method of suspending, resuming and turning on computers |
US6189108B1 (en) * | 1998-02-19 | 2001-02-13 | International Business Machine Corporation | Reporting of power states for a network connected PC |
TW200509593A (en) * | 2003-08-29 | 2005-03-01 | Arima Computer Corp | Apparatus and method for wakeup on LAN |
TW200515156A (en) * | 2003-08-14 | 2005-05-01 | Toshiba Kk | Electronic device and power control method |
-
2011
- 2011-06-08 TW TW100119976A patent/TWI454936B/zh not_active IP Right Cessation
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6189108B1 (en) * | 1998-02-19 | 2001-02-13 | International Business Machine Corporation | Reporting of power states for a network connected PC |
TW374870B (en) * | 1998-08-26 | 1999-11-21 | Asustek Comp Inc | UPS method of suspending, resuming and turning on computers |
TW200515156A (en) * | 2003-08-14 | 2005-05-01 | Toshiba Kk | Electronic device and power control method |
TW200509593A (en) * | 2003-08-29 | 2005-03-01 | Arima Computer Corp | Apparatus and method for wakeup on LAN |
Also Published As
Publication number | Publication date |
---|---|
TW201250483A (en) | 2012-12-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102039796B1 (ko) | 주변기기 서브시스템에 대한 개별화된 전력 제어를 제공하기 위한 방법 및 장치 | |
TWI386791B (zh) | 用以將計算平台轉換為低電力系統狀態之技術 | |
KR101957555B1 (ko) | 상시-온 프로세서를 갖는 시스템 온 칩 | |
TWI464571B (zh) | A power saving electronic device for a computer motherboard in a standby dormant state and a computer motherboard | |
US7437575B2 (en) | Low power mode for device power management | |
US6760850B1 (en) | Method and apparatus executing power on self test code to enable a wakeup device for a computer system responsive to detecting an AC power source | |
US8028185B2 (en) | Protocol for transitioning in and out of zero-power state | |
US8914653B2 (en) | Method and system for providing hybrid-shutdown and fast startup processes | |
KR101805346B1 (ko) | Soc를 재구성하고 메모리-전용 통신 모드를 지원하는 올웨이즈-온 프로세서를 갖는 시스템 온 어 칩 | |
US20170083079A1 (en) | System and method for power management | |
JP5885881B2 (ja) | コンピューティングデバイスにおける電源オフ状態の実施 | |
US9329658B2 (en) | Block-level sleep logic | |
TW201346519A (zh) | 包括在裝置中自主的硬體式深度省電之能源效率及能源節約的方法、設備及系統 | |
TWI522794B (zh) | 節能非揮發性微處理器 | |
US20070130480A1 (en) | System and method for enabling fast power-on times when using a large operating system to control an instrumentation system | |
US20190004818A1 (en) | Method of UEFI Shell for Supporting Power Saving Mode and Computer System thereof | |
US7877589B2 (en) | Configuring a device for operation on a computing platform | |
TW515995B (en) | Method allowing to configure computer system as wake on LAN | |
TWI485623B (zh) | 快速喚醒電腦系統方法與電腦系統 | |
TWI693513B (zh) | 伺服器系統及其省電方法 | |
CN101281416A (zh) | 确保系统关机完成的方法 | |
KR101978323B1 (ko) | Gpio 포트를 활용한 효율적인 전력관리 장치 및 방법 | |
TWI526817B (zh) | 電腦系統、可適性休眠控制模組及其控制方法 | |
TWI454936B (zh) | 開機方法 | |
CN102830985A (zh) | 开机方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Annulment or lapse of patent due to non-payment of fees |