TWI777259B - 開機方法 - Google Patents
開機方法 Download PDFInfo
- Publication number
- TWI777259B TWI777259B TW109134054A TW109134054A TWI777259B TW I777259 B TWI777259 B TW I777259B TW 109134054 A TW109134054 A TW 109134054A TW 109134054 A TW109134054 A TW 109134054A TW I777259 B TWI777259 B TW I777259B
- Authority
- TW
- Taiwan
- Prior art keywords
- processing unit
- central processing
- location information
- memory
- main memory
- Prior art date
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
- Stored Programmes (AREA)
- Diaphragms And Bellows (AREA)
Abstract
一種開機方法包含:藉由一中央處理單元在開機的過程中判斷一非揮發性記憶體是否有儲存多個主記憶體的一錯誤位置資訊;當該中央處理單元判斷該非揮發性記憶體有儲存該錯誤位置資訊時,該中央處理單元在開機的過程中,讀取該錯誤位置資訊,並省略對應該錯誤位置資訊的該至少一主記憶體所要作的開機檢測,以繼續執行開機程序;當該中央處理單元判斷該非揮發性記憶體沒有儲存該錯誤位置資訊時,該中央處理單元繼續執行開機程序。
Description
本發明是有關於一種開機方法,特別是指一種減少系統開機時間的開機方法。
現有的電腦系統在開機的過程中,基本輸入輸出系統(BIOS)會執行啟動自我檢測(Power-On Self-Test,POST),以測試和初始化中央處理器(CPU)、晶片組(Chipset)、系統記憶體(RAM)、硬碟、滑鼠、鍵盤等裝置。有時候部分系統記憶體雖然發生異常,但仍然可以開機成功,然而,在初始化各裝置的過程,若偵測到裝置發生異常,基本輸入輸出系統會再對被偵測到發生異常的裝置進行多次的重複確認,才會接著對下一個裝置進行初始化,這種情況將導致基本輸入輸出系統在每次的開機過程中,花費更多的時間重複檢測確認已經發生異常的系統記憶體所發生的錯誤,進而使得整體的開機時間變長,因而成為一個待改善的現象。
因此,本發明的目的,即在提供一種減少系統開機時間的開機方法。
於是,本發明提供一種開機方法,適用於一電腦系統,該電腦系統包含一中央處理單元、一平台路徑控制器、一電連接該平台路徑控制器的非揮發性記憶體、及多個主記憶體。該開機方法包含步驟(A)~(C)。
於步驟(A),藉由該中央處理單元執行一基本輸入輸出系統程式以進行開機,並在開機的過程中判斷該非揮發性記憶體所儲存的一系統事件記錄(System event log,SEL)是否儲存有該等主記憶體的一錯誤位置資訊。
於步驟(B),當該中央處理單元判斷該非揮發性記憶體有儲存該錯誤位置資訊時,該中央處理單元在開機的過程中,讀取該錯誤位置資訊,並省略對應該錯誤位置資訊的該至少一主記憶體所要作的開機檢測。
於步驟(C),當該中央處理單元判斷該非揮發性記憶體沒有儲存該錯誤位置資訊時,或者,已省略對應該錯誤位置資訊的該至少一主記憶體所要作的開機檢測之後,該中央處理單元對其餘未被省略開機檢測的該至少一主記憶體作檢測,以繼續執行開機程序。
在一些實施態樣中,其中,步驟(C)還包括子步驟(C1),當該中央處理單元判斷其餘未被省略開機檢測的該至少一主記憶體沒有記憶體錯誤時,該中央處理單元繼續執行開機程序。
在一些實施態樣中,其中,步驟(C)還包括子步驟(C2),當該中央處理單元判斷其餘未被省略開機檢測的該至少一主記憶體有記憶體錯誤,且該中央處理單元沒有開啟包裝後修復(Post Package Repair,PPR)功能時,該中央處理單元將發生記憶體錯誤的位置更新至該錯誤位置資訊,且省略對應該錯誤位置資訊的該至少一主記憶體所要作的開機檢測,以繼續執行開機程序。
在一些實施態樣中,其中,步驟(C)還包括子步驟(C3),當該中央處理單元判斷其餘未被省略開機檢測的該至少一主記憶體有記憶體錯誤,且該中央處理單元有開啟包裝後修復(Post Package Repair,PPR)功能時,該中央處理單元對發生記憶體錯誤的該至少一主記憶體作修復,以繼續執行開機程序。
在一些實施態樣中,其中,在步驟(B)中,該中央處理單元還將省略開機檢測的資訊更新至該系統事件記錄。
在一些實施態樣中,其中,在子步驟(C2)中,該中央處理單元還將對應該錯誤位置資訊的該至少一主記憶體的至少一序號更新至該非揮發性記憶體的該系統事件記錄。
在一些實施態樣中,其中,在子步驟(C3)中,該中央處理單元還將對發生記憶體錯誤的該至少一主記憶體作修復的資訊更新至該系統事件記錄。
在一些實施態樣中,該電腦系統還包含一顯示單元,其中,在步驟(B)中,該中央處理單元還將對應該錯誤位置資訊的該至少一主記憶體的資訊傳送至該顯示單元以進行顯示。
在一些實施態樣中,其中,在子步驟(C2)中,該中央處理單元還將對應該錯誤位置資訊的該至少一主記憶體的資訊傳送至該顯示單元以進行顯示。
在一些實施態樣中,其中,在子步驟(C3)中,該中央處理單元還將對發生記憶體錯誤的該至少一主記憶體作修復的資訊傳送至該顯示單元以進行顯示。
本發明的功效在於:藉由該非揮發性記憶體儲存該錯誤位置資訊,使得該中央處理單元在開機的過程中,能夠根據該錯誤位置資訊獲得前次已發生記憶體錯誤的該至少一主記憶體是在哪個位置,進而省略對該至少一主記憶體作開機檢測,而能有效地節省開機的時間。
在本發明被詳細描述之前,應當注意在以下的說明內容中,類似的元件是以相同的編號來表示。
參閱圖1,本發明開機方法之一實施例,適用於一電腦系統1,該電腦系統1例如是一伺服主機,並包含多個主記憶體5、一電連接該等主記憶體5的中央處理單元7、一電連接該中央處理單元7的一平台路徑控制器8、以及電連接該平台路徑控制器8的一基本輸入輸出系統(BIOS)晶片2、一基板管理控制器(Baseboard management controller,BMC)3、一非揮發性記憶體4、及一顯示單元6。該中央處理單元7例如是一個或多個中央處理器(CPU),該平台路徑控制器8是設置於一晶片組(圖未示)內,該中央處理單元7與該平台路徑控制器8也可以是共同設置於一系統單晶片(SOC)中。另外要特別強調的是:該非揮發性記憶體4是設置於該伺服主機的一主板上且與該平台路徑控制器8電連接的,與習知技術中與該基板管理控制器3形成電連接的另一非揮發性記憶體並不相同。
參閱圖2,該開機方法包含步驟S1~S10。
於步驟S1,該中央處理單元7載入並執行該基本輸入輸出系統晶片2中所儲存的該基本輸入輸出系統程式以進行開機,並在開機的過程中判斷該非揮發性記憶體4是否有儲存相關於該等主記憶體5之至少其中一者的一系統事件記錄(System event log,SEL),其中,該系統事件記錄可以包括一錯誤位置資訊。該錯誤位置資訊用於指示該等主記憶體5之其中至少一者曾經發生記憶體錯誤的位置,例如是具有哪一個序列號的雙列直插式記憶體模組及/或哪一個雙列直插式記憶體模組(Dual In-line Memory Module,DIMM)插槽。當該中央處理單元7判斷該非揮發性記憶體4有儲存該錯誤位置資訊時,即該非揮發性記憶體4所儲存的該系統事件記錄有包括該錯誤位置資訊時,則執行步驟S2。而當該中央處理單元7判斷該非揮發性記憶體4沒有儲存該錯誤位置資訊時,即該非揮發性記憶體4所儲存的所有該系統事件記錄均沒有包括該錯誤位置資訊時,則執行步驟S5。
另外要特別補充說明的是:該基板管理控制器3的部分功用在於:該中央處理單元7可以周期性或非週期性自該非揮發性記憶體4將該系統事件記錄(SEL)傳送至該基板管理控制器3,以供該基板管理控制器3儲存並選擇性地傳送到一遠端電腦。
於步驟S2,該中央處理單元7執行該基本輸入輸出系統程式並在開機的過程中,讀取該錯誤位置資訊,並省略對應該錯誤位置資訊的該至少一主記憶體5所要作的開機檢測。此外,該中央處理單元7還根據省略開機檢測的資訊(例如哪一個DIMM插槽省略開機檢測)更新至該系統事件記錄。接著,執行步驟S3。
於步驟S3,該中央處理單元7將對應該錯誤位置資訊的該至少一主記憶體5的資訊(例如哪一個DIMM插槽省略開機檢測)傳送至該顯示單元6以進行顯示。接著,執行步驟S4。
於步驟S4,該中央處理單元7繼續檢測未被省略開機檢測的其他該等主記憶體5。接著,執行步驟S5。
於步驟S5,該中央處理單元7依序判斷該等主記憶體5是否發生記憶體錯誤,其中,該中央處理單元7還包括多個記憶體控制模組及一中央控制模組,該等記憶體控制模組分別對應該等主記憶體5,該中央處理單元7透過該等記憶體控制模組藉由讀寫該等主記憶體以判斷其所分別對應的該等主記憶體的運作狀態是否處於運作正常及運作異常其中一者。當其中一該主記憶體5處於運作異常,則對應之該記憶體控制模組傳送一記憶體錯誤通知至該中央控制模組,以供該中央控制模組判斷出該運作於運作異常的該主記憶體5發生錯誤。當該中央處理單元7判斷該等主記憶體5沒有發生記憶體錯誤時,則執行步驟S6。而當該中央處理單元7判斷該等主記憶體5有發生記憶體錯誤時,則執行步驟S7。前述記憶體發生的錯誤例如是英特爾(Intel)公司所定義的可修正錯誤(Correctable error,CE)及不可修正錯誤(Uncorrectable error,UCE)。
於步驟S6,繼續執行開機程序。
於步驟S7,該中央處理單元7判斷是否有開啟包裝後修復(Post Package Repair,PPR)功能,此功能例如是由英特爾(Intel)公司所設計的標準。當該中央處理單元7判斷沒有開啟PPR功能時,則執行步驟S8。而當該中央處理單元7判斷有開啟PPR功能時,則執行步驟S10。
於步驟S8,該中央處理單元7將發生記憶體錯誤的位置更新至該系統事件記錄的該錯誤位置資訊,且省略對應該錯誤位置資訊的該至少一主記憶體5所要作的開機檢測。接著,執行步驟S9。
於步驟S9,該中央處理單元7將對應該錯誤位置資訊的該至少一主記憶體5的至少一序號更新至該非揮發性記憶體4的該系統事件記錄的該序列號資訊,以供後續的人員偵錯或修正相關問題。接著,執行步驟S12。
於步驟S10,該中央處理單元7對發生記憶體錯誤的該至少一主記憶體5作修復,且將對發生記憶體錯誤的該至少一主記憶體5作修復的資訊(例如哪一個DIMM插槽已修復成功)更新至該系統事件記錄。接著,執行步驟S11。
於步驟S11,該中央處理單元7還將對發生記憶體錯誤的該至少一主記憶體5作修復的資訊(例如哪一個DIMM插槽已修復成功傳送至該顯示單元6以進行顯示。接著,執行步驟S12。
於步驟S12,該中央處理單元7判斷是否已檢測所有未對應該錯誤位置資訊的該等主記憶體5。當判斷已檢測完畢時,執行步驟S6。而當判斷未檢測完畢時,執行步驟S13。
於步驟S13,該中央處理單元7檢測下一個未檢測的該主記憶體5。接著,執行步驟S5。
綜上所述,藉由該非揮發性記憶體4儲存該錯誤位置資訊,使得該中央處理單元7執行該基本輸入輸出系統程式而在開機的過程中,能夠根據該錯誤位置資訊獲得前次已發生記憶體錯誤的該至少一主記憶體5是在哪個位置,進而省略對該至少一主記憶體5作開機檢測,而能有效地節省開機的時間。更詳細地說,該中央處理單元7執行該基本輸入輸出系統程式而在開機的過程中,逐一檢查並初始化及啟用所有檢測過且預設設定值為啟用的所有硬體。但是,依據本案的技術,在開機的過程中,若於该非揮發性記憶體4取得該錯誤位置資訊,則直接隔離及省略檢測該錯誤位置資訊所對應的主記憶體,且也不對該錯誤位置資訊對應的主記憶體做後續的初始化及啟動的觸發,或是在當次開機過程有檢測到故障的主記憶體,則不對故障的該主記憶體做初始化及啟用的動作。藉此,該故障的主記憶體就會繼續處於未被初始化或未被啟動的停用的狀態,進而達到使該故障的主記憶體離線的效果,以達到本案的該中央處理單元7於開機過程僅初始化及啟動正常運作的主記憶體,而不初始化及不啟動被檢測到故障的該主記憶體,且不(重新)檢測及不初始化及不啟動曾經在先前開機被檢測到故障而記錄於該非揮發性記憶體的故障的主記憶體。因此,能夠加速開機所耗費的時間,以達到更有效率的開機過程。
藉此,本案不需要於前次開機時藉由人工修改BIOS設定參數來隔離故障的主記憶體,以避免BIOS韌體更新時,所修改的BIOS設定參數被一併更新,而造成人工修改BIOS的設定參數資料遺失。本案能夠直接將故障的主記憶體之錯誤位置資訊儲存於不是用來儲存BIOS韌體的該非揮發性記憶體4,或是不會受到BIOS韌體更新影響的記憶體區塊,來儲存對應故障的該主記憶體的該錯誤位置資訊,並於每次開機時,讀取該非揮發性記憶體4,以隔離該非揮發性記憶體所儲存的錯誤位置資訊所對應的主記憶體,以更為穩定且有效率的進行系統開機,故確實能達成本發明的目的。
惟以上所述者,僅為本發明的實施例而已,當不能以此限定本發明實施的範圍,凡是依本發明申請專利範圍及專利說明書內容所作的簡單的等效變化與修飾,皆仍屬本發明專利涵蓋的範圍內。
1:電腦系統
2:基本輸入輸出系統晶片
3:基板管理控制器
4:非揮發性記憶體
5:主記憶體
6:顯示單元
7:中央處理單元
8:平台路徑控制器
S1~S13:步驟
本發明的其他的特徵及功效,將於參照圖式的實施方式中清楚地呈現,其中:
圖1是一方塊圖,說明本發明開機方法所適用的一電腦系統;及
圖2是一流程圖,說明本發明開機方法的一實施例。
S1~S13:步驟
Claims (10)
- 一種開機方法,適用於一電腦系統,該電腦系統包含一中央處理單元、一平台路徑控制器、一電連接該平台路徑控制器的非揮發性記憶體、及多個主記憶體,該開機方法包含: (A)藉由該中央處理單元執行一基本輸入輸出系統程式以進行開機,並在開機的過程中判斷該非揮發性記憶體所儲存的一系統事件記錄(System event log,SEL)是否儲存有該等主記憶體的一錯誤位置資訊; (B)當該中央處理單元判斷該非揮發性記憶體有儲存該錯誤位置資訊時,該中央處理單元在開機的過程中,讀取該錯誤位置資訊,並省略對應該錯誤位置資訊的該至少一主記憶體所要作的開機檢測;及 (C)當該中央處理單元判斷該非揮發性記憶體沒有儲存該錯誤位置資訊時,或者,已省略對應該錯誤位置資訊的該至少一主記憶體所要作的開機檢測之後,該中央處理單元對其餘未被省略開機檢測的該至少一主記憶體作檢測,以繼續執行開機程序。
- 如請求項1所述的開機方法,其中,步驟(C)還包括子步驟(C1),當該中央處理單元判斷其餘未被省略開機檢測的該至少一主記憶體沒有記憶體錯誤時,該中央處理單元繼續執行開機程序。
- 如請求項2所述的開機方法,其中,步驟(C)還包括子步驟(C2),當該中央處理單元判斷其餘未被省略開機檢測的該至少一主記憶體有記憶體錯誤,且該中央處理單元沒有開啟包裝後修復(Post Package Repair,PPR)功能時,該中央處理單元將發生記憶體錯誤的位置更新至該錯誤位置資訊,且省略對應該錯誤位置資訊的該至少一主記憶體所要作的開機檢測,以繼續執行開機程序。
- 如請求項3所述的開機方法,其中,步驟(C)還包括子步驟(C3),當該中央處理單元判斷其餘未被省略開機檢測的該至少一主記憶體有記憶體錯誤,且該中央處理單元有開啟包裝後修復(Post Package Repair,PPR)功能時,該中央處理單元對發生記憶體錯誤的該至少一主記憶體作修復,以繼續執行開機程序。
- 如請求項4所述的開機方法,其中,在步驟(B)中,該中央處理單元還將省略開機檢測的資訊更新至該系統事件記錄。
- 如請求項5所述的開機方法,其中,在子步驟(C2)中,該中央處理單元還將對應該錯誤位置資訊的該至少一主記憶體的至少一序號更新至該非揮發性記憶體的該系統事件記錄。
- 如請求項6所述的開機方法,其中,在子步驟(C3)中,該中央處理單元還將對發生記憶體錯誤的該至少一主記憶體作修復的資訊更新至該系統事件記錄。
- 如請求項7所述的開機方法,該電腦系統還包含一顯示單元,其中,在步驟(B)中,該中央處理單元還將對應該錯誤位置資訊的該至少一主記憶體的資訊傳送至該顯示單元以進行顯示。
- 如請求項8所述的開機方法,其中,在子步驟(C2)中,該中央處理單元還將對應該錯誤位置資訊的該至少一主記憶體的資訊傳送至該顯示單元以進行顯示。
- 如請求項9所述的開機方法,其中,在子步驟(C3)中,該中央處理單元還將對發生記憶體錯誤的該至少一主記憶體作修復的資訊傳送至該顯示單元以進行顯示。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW109134054A TWI777259B (zh) | 2020-09-30 | 2020-09-30 | 開機方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW109134054A TWI777259B (zh) | 2020-09-30 | 2020-09-30 | 開機方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202215239A TW202215239A (zh) | 2022-04-16 |
TWI777259B true TWI777259B (zh) | 2022-09-11 |
Family
ID=82197496
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW109134054A TWI777259B (zh) | 2020-09-30 | 2020-09-30 | 開機方法 |
Country Status (1)
Country | Link |
---|---|
TW (1) | TWI777259B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW576965B (en) * | 2002-10-21 | 2004-02-21 | Inventec Corp | Method for automatically switching booting mode |
TWI241482B (en) * | 2002-09-30 | 2005-10-11 | Yu-Mei Li | Built-in power-on memory testing method of computer |
US20090287900A1 (en) * | 2008-05-14 | 2009-11-19 | Joseph Allen Kirscht | Reducing Power-On Time by Simulating Operating System Memory Hot Add |
TW201209715A (en) * | 2010-08-17 | 2012-03-01 | Wistron Corp | Method and system for accelerating boot |
TWI474260B (zh) * | 2009-02-16 | 2015-02-21 | Asustek Comp Inc | 電腦系統與其主機板上之記憶體電路和開機方法 |
TWI552158B (zh) * | 2012-08-28 | 2016-10-01 | 皇虎科技(加拿大)有限公司 | 用於測試記憶體之系統與方法 |
TW201918880A (zh) * | 2017-11-01 | 2019-05-16 | 英業達股份有限公司 | 開機前檢測裝置及檢測後開機的方法 |
-
2020
- 2020-09-30 TW TW109134054A patent/TWI777259B/zh active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI241482B (en) * | 2002-09-30 | 2005-10-11 | Yu-Mei Li | Built-in power-on memory testing method of computer |
TW576965B (en) * | 2002-10-21 | 2004-02-21 | Inventec Corp | Method for automatically switching booting mode |
US20090287900A1 (en) * | 2008-05-14 | 2009-11-19 | Joseph Allen Kirscht | Reducing Power-On Time by Simulating Operating System Memory Hot Add |
TWI474260B (zh) * | 2009-02-16 | 2015-02-21 | Asustek Comp Inc | 電腦系統與其主機板上之記憶體電路和開機方法 |
TW201209715A (en) * | 2010-08-17 | 2012-03-01 | Wistron Corp | Method and system for accelerating boot |
TWI552158B (zh) * | 2012-08-28 | 2016-10-01 | 皇虎科技(加拿大)有限公司 | 用於測試記憶體之系統與方法 |
TW201918880A (zh) * | 2017-11-01 | 2019-05-16 | 英業達股份有限公司 | 開機前檢測裝置及檢測後開機的方法 |
Also Published As
Publication number | Publication date |
---|---|
TW202215239A (zh) | 2022-04-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20240012706A1 (en) | Method, system and apparatus for fault positioning in starting process of server | |
US6564348B1 (en) | Method and apparatus for storing and using chipset built-in self-test signatures | |
US7266727B2 (en) | Computer boot operation utilizing targeted boot diagnostics | |
WO2021169260A1 (zh) | 一种系统板卡电源检测方法、装置、设备及存储介质 | |
US9606889B1 (en) | Systems and methods for detecting memory faults in real-time via SMI tests | |
US7661044B2 (en) | Method, apparatus and program product to concurrently detect, repair, verify and isolate memory failures | |
US8166338B2 (en) | Reliable exception handling in a computer system | |
US9218893B2 (en) | Memory testing in a data processing system | |
US11379330B2 (en) | Information handling systems and related methods for testing memory during boot and during operating system (OS) runtime | |
US6550019B1 (en) | Method and apparatus for problem identification during initial program load in a multiprocessor system | |
US10691565B2 (en) | Storage control device and storage control method | |
TWI759719B (zh) | 快閃記憶體控制器及用於快閃記憶體控制器的方法 | |
US6725396B2 (en) | Identifying field replaceable units responsible for faults detected with processor timeouts utilizing IPL boot progress indicator status | |
CN113366576A (zh) | 用于存储器系统上的功率损耗操作的保持自测试 | |
US10777296B2 (en) | Information handling system and method to dynamically detect and recover from thermally induced memory failures | |
US9343181B2 (en) | Memory module errors | |
WO2019184612A1 (zh) | 一种终端及电子设备 | |
TWI777259B (zh) | 開機方法 | |
US11263083B1 (en) | Method and apparatus for selective boot-up in computing devices | |
CN114385247A (zh) | 开机方法 | |
US8626992B2 (en) | Storage device with identification information | |
TWI845166B (zh) | 記憶體模組錯誤之顯示方法 | |
US20230134493A1 (en) | Updating error policy | |
US8438431B2 (en) | Support element office mode array repair code verification | |
JP2008191864A (ja) | データ処理装置及びその起動方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
GD4A | Issue of patent certificate for granted invention patent |