專利名稱:提高計算機系統(tǒng)穩(wěn)定性的方法及計算機系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計算機技術(shù),特別涉及一種提高計算機系統(tǒng)穩(wěn)定性的方法及計算機系統(tǒng)。
背景技術(shù):
由于高端容錯計算機系統(tǒng)承載著金融、電信、航空、電力等行業(yè)的關(guān)鍵業(yè)務(wù) (Mission Critical),需要保證365天M小時不間斷的運行,并保證數(shù)據(jù)的正確性, 因此需要具備高度的穩(wěn)定性、可用性與可服務(wù)性(Reliability, Availability and Serviceability,RAS)特性。具體來說,穩(wěn)定性要求計算機能夠持續(xù)運轉(zhuǎn),自動檢測和糾正系統(tǒng)錯誤。可用性要求計算機系統(tǒng)的重要資源都有備份,能夠檢測到潛在要發(fā)生的問題,并且能夠轉(zhuǎn)移其上正在運行的任務(wù)到備份資源,以保持計算機系統(tǒng)正常運行,減少宕機時間。 可服務(wù)性要求計算機系統(tǒng)能夠?qū)崟r在線診斷,精確定位出根本問題所在,做到準(zhǔn)確無誤的快速修復(fù)?,F(xiàn)有技術(shù)中,通常通過板上管理(Onboard Administrator,OA)來收集運行中的計算機系統(tǒng)的設(shè)備錯誤數(shù)據(jù),以利用這些錯誤數(shù)據(jù)進(jìn)行故障的預(yù)測。當(dāng)設(shè)備故障次數(shù)達(dá)到設(shè)定閾值時,啟用備份設(shè)備或進(jìn)行熱替換。這些錯誤數(shù)據(jù)嚴(yán)重影響重新啟動的計算機系統(tǒng)或已經(jīng)下線,之后再次上線啟用的設(shè)備的穩(wěn)定性。
發(fā)明內(nèi)容
本發(fā)明實施例提出一種提高計算機系統(tǒng)穩(wěn)定性的方法及計算機系統(tǒng),以提高計算機系統(tǒng)的穩(wěn)定性。本發(fā)明實施例提供了一種提高計算機系統(tǒng)穩(wěn)定性的方法,包括計算機系統(tǒng)在啟動或運行時,收集所述計算機系統(tǒng)的設(shè)備產(chǎn)生的錯誤數(shù)據(jù);將所述錯誤數(shù)據(jù)存儲到非易失性存儲器中;所述計算機系統(tǒng)重啟時,根據(jù)所述錯誤數(shù)據(jù)對產(chǎn)生所述錯誤數(shù)據(jù)的設(shè)備進(jìn)行狀態(tài)
恢復(fù)處理。本發(fā)明實施例還提供了一種提高計算機系統(tǒng)穩(wěn)定性的方法,包括計算機系統(tǒng)在運行時,收集所述計算機系統(tǒng)的設(shè)備中發(fā)生異常的設(shè)備的異常信息;將發(fā)生異常的設(shè)備的所述異常信息存儲到非易失性存儲器中;所述計算機系統(tǒng)根據(jù)所述異常信息對請求重新上線的已下線的所述設(shè)備進(jìn)行狀態(tài)恢復(fù)。本發(fā)明實施例還提供了一種計算機系統(tǒng),包括錯誤收集單元,用于在計算機系統(tǒng)運行或啟動時,收集所述計算機系統(tǒng)的設(shè)備產(chǎn)生的錯誤數(shù)據(jù);存儲單元,用于將所述錯誤數(shù)據(jù)存儲到非易失性存儲器中;
恢復(fù)處理單元,用于在所述計算機系統(tǒng)重啟時,根據(jù)所述錯誤數(shù)據(jù)對產(chǎn)生所述錯誤數(shù)據(jù)的設(shè)備進(jìn)行狀態(tài)恢復(fù)處理。本發(fā)明實施例還提供了一種計算機系統(tǒng),包括異常信息收集單元,用于在計算機系統(tǒng)運行時,收集所述計算機系統(tǒng)的設(shè)備中發(fā)生異常的設(shè)備的異常信息;存儲單元,用于將發(fā)生異常的設(shè)備的所述異常信息存儲到非易失性存儲器中;狀態(tài)恢復(fù)單元,用于根據(jù)所述異常信息對請求重新上線的已下線的所述設(shè)備進(jìn)行狀態(tài)恢復(fù)。本發(fā)明實施例提供的提高計算機系統(tǒng)穩(wěn)定性的方法及計算機系統(tǒng),通過在計算機系統(tǒng)運行中將錯誤數(shù)據(jù)記錄到非易失性存儲器中,并在重新啟動過程中讀取非易失性存儲器中的錯誤數(shù)據(jù)對計算機系統(tǒng)中對應(yīng)的設(shè)備進(jìn)行狀態(tài)恢復(fù)處理,解決了計算機系統(tǒng)在重啟后設(shè)備狀態(tài)初始化導(dǎo)致的計算機系統(tǒng)之前對一些異常或預(yù)測會損壞的設(shè)備的禁用、隔離等處理失效,直接導(dǎo)致系統(tǒng)穩(wěn)定性的降低的問題,提高了計算機系統(tǒng)的穩(wěn)定性。
圖1為本發(fā)明實施例提供的一種提高計算機系統(tǒng)穩(wěn)定性的方法的流程圖;圖2為本發(fā)明實施例提供的另一種提高計算機系統(tǒng)穩(wěn)定性的方法的流程圖;圖3為本發(fā)明實施例提供的提高計算機系統(tǒng)穩(wěn)定性的方法中計算機系統(tǒng)重啟情況下的設(shè)備狀態(tài)恢復(fù)示意圖;圖4為本發(fā)明實施例提供的提高計算機系統(tǒng)穩(wěn)定性的方法中計算機系統(tǒng)的BIOS 策略配置菜單示意圖;圖5為本發(fā)明實施例提供的提高計算機系統(tǒng)穩(wěn)定性的方法中DIMM隔離狀態(tài)恢復(fù)流程圖;圖6為本發(fā)明實施例提供的提高計算機系統(tǒng)穩(wěn)定性的方法中處理器核禁用恢復(fù)處理流程圖;圖7為本發(fā)明實施例提供的提高計算機系統(tǒng)穩(wěn)定性的方法中緩存禁用信息的狀態(tài)恢復(fù)處理流程圖;圖8為本發(fā)明實施例提供的提高計算機系統(tǒng)穩(wěn)定性的方法中已下線的發(fā)生異常的節(jié)點重新上線的狀態(tài)恢復(fù)處理流程圖;圖9為本發(fā)明實施例提供的一種計算機系統(tǒng)的結(jié)構(gòu)示意圖;圖10為本發(fā)明實施例提供的另一種計算機系統(tǒng)的結(jié)構(gòu)示意圖。
具體實施例方式為使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合附圖對本發(fā)明作進(jìn)一步地詳細(xì)描述。圖1為本發(fā)明實施例提供的一種提高計算機系統(tǒng)穩(wěn)定性的方法的流程圖。本實施例針對重新啟動的計算機系統(tǒng)在上一次運行時收集的錯誤數(shù)據(jù)對計算機系統(tǒng)中的設(shè)備進(jìn)行狀態(tài)恢復(fù),以提高計算機系統(tǒng)的穩(wěn)定性。如圖1所示,該方法包括步驟11、計算機系統(tǒng)在啟動或運行時,收集所述計算機系統(tǒng)的設(shè)備產(chǎn)生的錯誤數(shù)據(jù);錯誤數(shù)據(jù)可以是設(shè)備的異常信息、雙列直插式存儲模塊(Dual Inline Memory Modules, DIMM)隔離信息、處理器核的禁用信息、緩存禁用信息等。步驟12、將所述存儲到非易失性存儲器(Non-Volatile Memory, NVM)中。當(dāng)錯誤數(shù)據(jù)為設(shè)備的異常信息時,計算機系統(tǒng)在運行時將發(fā)生異常的設(shè)備的異常信息存儲到所述非易失性存儲器中;該方法還包括所述計算機系統(tǒng)在運行時根據(jù)所述異常信息,對請求重新上線的已下線的所述設(shè)備進(jìn)行狀態(tài)恢復(fù)。當(dāng)錯誤數(shù)據(jù)為DIMM隔離信息時,所述計算機系統(tǒng)在運行時判斷所述DIMM是否被替換,若是,則將存儲在所述非易失性存儲器中的所述DIMM隔離信息進(jìn)行清除;否則,所述計算機系統(tǒng)重啟時將所述DIMM隔離。步驟13、所述計算機系統(tǒng)重啟時,根據(jù)所述錯誤數(shù)據(jù)對產(chǎn)生所述錯誤數(shù)據(jù)的設(shè)備進(jìn)行狀態(tài)恢復(fù)處理。例如計算機系統(tǒng)根據(jù)DIMM隔離信息對所述計算機系統(tǒng)中對應(yīng)的DIMM進(jìn)行隔離。 再如計算機系統(tǒng)根據(jù)處理器核的禁用信息禁止所述計算機系統(tǒng)中對應(yīng)的處理器核參與處理器啟動處理線程(Processor Boot Strap Processor, PBSP)的選擇,或禁用所述計算機系統(tǒng)中對應(yīng)的處理器核。又如計算機系統(tǒng)根據(jù)緩存禁用信息重新禁用所述計算機系統(tǒng)中對應(yīng)的緩存。本實施例中,計算機系統(tǒng)通過將運行時收集的錯誤數(shù)據(jù)存儲在NVM中,并通過在重啟時根據(jù)錯誤數(shù)據(jù)對對應(yīng)設(shè)備進(jìn)行狀態(tài)恢復(fù)處理,避免了初始化后計算機系統(tǒng)將有問題的或不穩(wěn)定的設(shè)備作為正常設(shè)備啟用,提高了計算機系統(tǒng)的穩(wěn)定性。圖2為本發(fā)明實施例提供的另一種提高計算機系統(tǒng)穩(wěn)定性的方法的流程圖。本實施例單獨針對運行的計算機系統(tǒng)中異常設(shè)備下線后重新上線導(dǎo)致計算機系統(tǒng)不穩(wěn)定的問題進(jìn)行處理。如圖2所示,該方法包括步驟21、計算機系統(tǒng)在運行時,收集所述計算機系統(tǒng)的設(shè)備中發(fā)生異常的設(shè)備的
異常信息;步驟22、將發(fā)生異常的設(shè)備的所述異常信息存儲到非易失性存儲器中;步驟23、所述計算機系統(tǒng)根據(jù)所述異常信息對請求重新上線的已下線的所述設(shè)備進(jìn)行狀態(tài)恢復(fù)。計算機系統(tǒng)在運行時將發(fā)生異常的設(shè)備的異常信息存儲到所述非易失性存儲器中之后,還可包括所述計算機系統(tǒng)判斷所述設(shè)備是否被替換,若是,則刪除所述非易失性存儲器中的所述異常信息;否則,執(zhí)行所述狀態(tài)恢復(fù)。本實施例中,計算機系統(tǒng)通過根據(jù)NVM中存儲的異常信息對對應(yīng)的重新請求上線的已下線的設(shè)備進(jìn)行狀態(tài)恢復(fù),避免了由于設(shè)備異常而下線的設(shè)備作為正常設(shè)備重新上線而導(dǎo)致的系統(tǒng)不穩(wěn)定,提高了計算機系統(tǒng)的穩(wěn)定性。例如在計算機系統(tǒng)運行時,如果其中的設(shè)備出現(xiàn)故障或被系統(tǒng)禁用,其基本輸入輸出系統(tǒng)(Basic Input Output System, BIOS)會將這些信息保存在NVM中。當(dāng)計算機系統(tǒng)重新啟動時,對這些信息進(jìn)行分析和處理,在不穩(wěn)定設(shè)備啟動前根據(jù)這些信息進(jìn)行系統(tǒng)配置,將不穩(wěn)定設(shè)備隔離或禁用,還原計算機系統(tǒng)中不穩(wěn)定設(shè)備到重啟前的狀態(tài),以保證計算機系統(tǒng)的穩(wěn)定性。
圖3為本發(fā)明實施例提供的提高計算機系統(tǒng)穩(wěn)定性的方法中計算機系統(tǒng)重啟情況下的設(shè)備狀態(tài)恢復(fù)示意圖。如圖3所示,計算機系統(tǒng)運行時,將收集的DIMM隔離信息、處理器核健康狀態(tài)信息及緩存禁用信息等錯誤數(shù)據(jù)存儲到NVM中,當(dāng)計算機系統(tǒng)重啟時,開啟BIOS配置策略,即在BIOS配置界面開啟設(shè)備狀態(tài)恢復(fù)功能,從NVM獲取錯誤數(shù)據(jù),根據(jù)相應(yīng)的錯誤數(shù)據(jù)調(diào)用相應(yīng)的設(shè)備狀態(tài)恢復(fù)分發(fā)程序?qū)?yīng)的設(shè)備進(jìn)行狀態(tài)恢復(fù)處理。進(jìn)一步地,BIOS配置界面還可設(shè)置有開關(guān),以使用戶根據(jù)需求進(jìn)行靈活的設(shè)備狀態(tài)恢復(fù)。如圖4所示,按照需求分別開啟不同設(shè)備的配置策略開關(guān),只有處于開啟狀態(tài)的設(shè)備才會按照相應(yīng)策略進(jìn)行狀態(tài)恢復(fù)。當(dāng)重啟開始,進(jìn)行系統(tǒng)初始化時,系統(tǒng)會進(jìn)入設(shè)備狀態(tài)恢復(fù)分發(fā)程序。下面以圖4所示DIMM隔離信息、處理器核健康狀況信息和緩存被禁用信息為例, 對提高計算機系統(tǒng)穩(wěn)定性的方法做進(jìn)一步詳細(xì)的說明。當(dāng)這些錯誤數(shù)據(jù)產(chǎn)生后,BIOS將這些錯誤數(shù)據(jù)保存在非易失性存儲器中,當(dāng)計算機系統(tǒng)重新啟動進(jìn)行初始化時,調(diào)用設(shè)備狀態(tài)恢復(fù)分發(fā)程序,從NVM中獲取這些錯誤數(shù)據(jù), 按照不同的策略進(jìn)行處理。具體地,DI匪隔離狀態(tài)恢復(fù)流程如圖5所示,包括步驟51、計算機系統(tǒng)運行時,某一 DMM的錯誤檢查與糾正(Error Correcting Code, ECC)錯誤達(dá)到規(guī)定閾值;步驟52、計算機系統(tǒng)通過Log信息識別出錯誤來源;步驟53、計算機系統(tǒng)標(biāo)記該DIMM為即將失效狀態(tài),并將該DIMM禁用;步驟M、計算機系統(tǒng)將失效DI匪信息保存到NVM中;步驟55、計算機系統(tǒng)判斷DIMM是否被替換,若是,則執(zhí)行步驟58 ;否則,執(zhí)行步驟 56 ;步驟56、計算機系統(tǒng)重新啟動后讀取NVM中存儲的DI匪信息;步驟57、計算機系統(tǒng)調(diào)用設(shè)備狀態(tài)恢復(fù)分發(fā)程序,將對應(yīng)的DIMM隔離,計算機系統(tǒng)繼續(xù)啟動,引導(dǎo)操作系統(tǒng)(Operation System,OS)。步驟58、計算機系統(tǒng)清除NVM中該失效DIMM信息,計算機系統(tǒng)恢復(fù)為健康狀態(tài)。本實施例中,計算機系統(tǒng)中的DIMM通過ECC等機制來對其中的數(shù)據(jù)進(jìn)行保護(hù),當(dāng)發(fā)現(xiàn)ECC錯誤數(shù)量達(dá)到設(shè)定的閾值上限時,系統(tǒng)會將此DIMM標(biāo)記為失效狀態(tài)并禁用,將失效信息保存在NVM中。在計算機系統(tǒng)繼續(xù)正常運行到重啟的這段時間內(nèi),如果DIMM通過熱插拔流程進(jìn)行了更換,則將NVM中該DIMM的失效信息清除。否則,當(dāng)系統(tǒng)重新啟動時,在啟動過程中調(diào)用設(shè)備狀態(tài)恢復(fù)分發(fā)程序,讀取系統(tǒng)中所有DIMM的失效信息,使用配置程序?qū)⑵涓綦x。處理器核禁用恢復(fù)處理流程如圖6所示,包括步驟61、計算機系統(tǒng)在第一次啟動時,檢測處理器核的健康狀況;步驟62、計算機系統(tǒng)對未通過檢測的處理器核進(jìn)行禁用;步驟63、計算機系統(tǒng)記錄該禁用信息到NVM中;步驟64、PBSP選擇,計算機系統(tǒng)繼續(xù)啟動,引導(dǎo)OS ;步驟65、計算機系統(tǒng)第二次啟動時,調(diào)用設(shè)備狀態(tài)恢復(fù)分發(fā)程序,從NVM中讀取禁用fn息;
7
步驟66、計算機系統(tǒng)根據(jù)讀取的禁用信息禁止對應(yīng)的處理器核參與PBSP選擇,或直接禁用對應(yīng)的處理器核;步驟67、計算機系統(tǒng)繼續(xù)啟動,檢測處理器核的健康狀況;步驟68、計算機系統(tǒng)對未經(jīng)過檢測的處理器核進(jìn)行禁用;步驟69、計算機系統(tǒng)將禁用信息記錄到NVM中。之后,計算機系統(tǒng)進(jìn)行PBSP選擇,計算機系統(tǒng)繼續(xù)啟動,引導(dǎo)OS。系統(tǒng)啟動時有可能會檢測到一些不穩(wěn)定的核,在本次啟動中該核會被屏蔽,但下次啟動時,該核卻仍有可能通過檢測,進(jìn)一步競爭PBSP和SBSP成為系統(tǒng)主線程,這時如果該核發(fā)生問題,整個系統(tǒng)就會立即崩潰。本處理流程中將檢測到的不穩(wěn)定核的信息存儲在 NVM中,下次啟動時通過設(shè)備狀態(tài)恢復(fù)流程識別并限制不穩(wěn)定的核參與PBSP競爭或直接將該核禁用。針對緩存禁用信息的狀態(tài)恢復(fù)處理流程如圖7所示,包括步驟71、計算機系統(tǒng)中,某緩存(Cacheline)發(fā)生ECC錯誤次數(shù)達(dá)到閾值時,計算機系統(tǒng)禁用該緩存。步驟72、計算機系統(tǒng)記錄該禁用信息到NVM中;步驟73、計算機系統(tǒng)重新啟動時,調(diào)用設(shè)備狀態(tài)恢復(fù)分發(fā)程序,讀取緩存禁用信息;步驟74、計算機系統(tǒng)使用系統(tǒng)服務(wù)對緩存進(jìn)行重新配置。之后,計算機系統(tǒng)繼續(xù)啟動,引導(dǎo)OS。緩存安全技術(shù)中規(guī)定,當(dāng)某條Cacheline ECC錯誤次數(shù)達(dá)到閾值后,會被系統(tǒng)禁用,本處理流程通過NVM保存此信息,當(dāng)下一次計算機系統(tǒng)啟動時,調(diào)用設(shè)備狀態(tài)恢復(fù)分發(fā)程序讀取此信息,進(jìn)行Cacheline配置,將曾經(jīng)標(biāo)記為禁用的Cacheline重新關(guān)閉。在運行的計算機系統(tǒng)中設(shè)備發(fā)生異常的信息都被保存到NVM中,假設(shè)一個場景中,用戶由于節(jié)能或其它需求,對運行中的計算機系統(tǒng)中的某一發(fā)生異常的節(jié)點進(jìn)行了下線請求,計算機系統(tǒng)完成了下線操作后,由于業(yè)務(wù)需要,用戶請求將已下線的節(jié)點重新上線,這時系統(tǒng)會調(diào)用設(shè)備狀態(tài)恢復(fù)程序,對節(jié)點狀態(tài)進(jìn)行恢復(fù)處理,具體如圖8所示,包括步驟81、運行的計算機系統(tǒng)中設(shè)備發(fā)生異常時,對異常狀況進(jìn)行處理。步驟82、將異常信息保持在NVM中;步驟83、用戶需求將某一節(jié)點或設(shè)備下線;步驟84、下線操作完成,計算機系統(tǒng)繼續(xù)運行;步驟85、用戶需求將已下線節(jié)點或設(shè)備重新上線;步驟86、計算機系統(tǒng)在上線操作中調(diào)用設(shè)備狀態(tài)恢復(fù)分發(fā)程序,對各個設(shè)備進(jìn)行狀態(tài)恢復(fù)操作;步驟87、設(shè)備上線;步驟88、計算機系繼續(xù)運行。這個恢復(fù)操作是可選的,如圖4所示可以采用BIOS配置界面中設(shè)置的開關(guān)在上線操作時進(jìn)行配置。本處理流程與上述處理流程最大的不同在于不涉及計算機系統(tǒng)重啟,整個操作是動態(tài)進(jìn)行的。
上述方法實施例通過在計算機系統(tǒng)運行中將錯誤數(shù)據(jù)記錄到NVM中,并在重新啟動過程中讀取NVM中的錯誤數(shù)據(jù)對計算機系統(tǒng)中對應(yīng)的設(shè)備進(jìn)行狀態(tài)恢復(fù)處理,解決了計算機系統(tǒng)在重啟后設(shè)備狀態(tài)初始化導(dǎo)致的計算機系統(tǒng)之前對一些異常或預(yù)測會損壞的設(shè)備的禁用、隔離等處理失效,直接導(dǎo)致系統(tǒng)穩(wěn)定性的降低的問題,提高了計算機系統(tǒng)的穩(wěn)定性。并且,通過在運行的計算機系統(tǒng)中的設(shè)備上線流程中將異常信息保存到NVM中,并在該設(shè)備重新上線過程中根據(jù)NVM保存的異常信息對該設(shè)備進(jìn)行恢復(fù)處理,解決了在計算機系統(tǒng)運行過程中,用戶請求設(shè)備下線后重新上線,這時設(shè)備下線前的狀態(tài)會被初始化,設(shè)備中被禁用的不穩(wěn)定部分(可能是另一個子設(shè)備)可能再次運行于系統(tǒng)中,造成系統(tǒng)穩(wěn)定性下降的問題,提高了計算機系統(tǒng)的穩(wěn)定性。本領(lǐng)域普通技術(shù)人員可以理解實現(xiàn)上述方法實施例的全部或部分步驟可以通過程序指令及相關(guān)的硬件來完成,前述的程序可以存儲于一計算機可讀取存儲介質(zhì)中,該程序在執(zhí)行時,執(zhí)行包括上述方法實施例的步驟;而前述的存儲介質(zhì)包括R0M、RAM、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)。圖9為本發(fā)明實施例提供的一種計算機系統(tǒng)的結(jié)構(gòu)示意圖。如圖9所示,計算機系統(tǒng)包括錯誤收集單元91、存儲單元92及恢復(fù)處理單元93。錯誤收集單元91用于在計算機系統(tǒng)運行或啟動時,收集所述計算機系統(tǒng)的設(shè)備產(chǎn)生的錯誤數(shù)據(jù);存儲單元92用于將所述錯誤數(shù)據(jù)存儲到NVM中;恢復(fù)處理單元93用于在所述計算機系統(tǒng)重啟時,根根據(jù)所述錯誤數(shù)據(jù)對產(chǎn)生所述錯誤數(shù)據(jù)的設(shè)備進(jìn)行狀態(tài)恢復(fù)處理。當(dāng)所述錯誤數(shù)據(jù)為所述設(shè)備的異常信息,所述恢復(fù)處理單元93還用于在所述計算機系統(tǒng)運行時根據(jù)所述異常信息,對請求重新上線的已下線的所述設(shè)備進(jìn)行狀態(tài)恢復(fù)。再如所述恢復(fù)處理單元93具體用于根據(jù)DIMM隔離信息對所述計算機系統(tǒng)中對應(yīng)的DMM進(jìn)行隔離。所述計算機系統(tǒng)還可包括替換判斷單元及信息清除單元。替換判斷單元用于在所述計算機系統(tǒng)運行時判斷所述DIMM是否被替換;信息清除單元用于若所述替換判斷單元判斷所述DIMM是被替換,則將存儲在所述非易失性存儲器中的所述DIMM隔離信息進(jìn)行清除;相應(yīng)地,所述恢復(fù)處理單元用于若所述替換判斷單元判斷所述DIMM未被替換,則在所述計算機系統(tǒng)重啟時將所述DIMM隔離。又如所述恢復(fù)處理單元93可具體用于根據(jù)處理器核的禁用信息禁止所述計算機系統(tǒng)中對應(yīng)的處理器核參與PBSP的選擇,或禁用所述計算機系統(tǒng)中對應(yīng)的處理器核。又如所述恢復(fù)處理單元93可具體用于根據(jù)緩存禁用信息重新關(guān)閉所述計算機系統(tǒng)中對應(yīng)的緩存。上述錯誤收集單元收集的錯誤數(shù)據(jù)及恢復(fù)處理單元進(jìn)行的恢復(fù)處理操作具體詳見上述方法實施例中的說明。本實施例中,計算機系統(tǒng)通過錯誤收集單元將運行時收集的錯誤數(shù)據(jù)存儲在NVM 中,并通過恢復(fù)處理單元在重啟時根據(jù)錯誤數(shù)據(jù)對對應(yīng)設(shè)備進(jìn)行狀態(tài)恢復(fù)處理,避免了初始化后計算機系統(tǒng)將有問題的或不穩(wěn)定的設(shè)備作為正常設(shè)備啟用,提高了計算機系統(tǒng)的穩(wěn)定性。圖10為本發(fā)明實施例提供的另一種計算機系統(tǒng)的結(jié)構(gòu)示意圖。如圖10所示,計算機系統(tǒng)包括異常信息收集單元101、存儲單元102及狀態(tài)恢復(fù)單元103。
異常信息收集單元101用于在計算機系統(tǒng)運行時,收集所述計算機系統(tǒng)的設(shè)備中發(fā)生異常的設(shè)備的異常信息;存儲單元102用于將發(fā)生異常的設(shè)備的所述異常信息存儲到 NVM中;狀態(tài)恢復(fù)單元103用于根據(jù)所述異常信息對請求重新上線的已下線的所述設(shè)備進(jìn)行狀態(tài)恢復(fù)。本發(fā)明實施例提供的計算機系統(tǒng)還可包括替換判斷單元及信息刪除單元。替換判斷單元用于在所述計算機系統(tǒng)運行時將發(fā)生異常的設(shè)備的異常信息存儲到所述非易失性存儲器中之后,判斷所述設(shè)備是否被替換;信息刪除單元用于若所述替換判斷單元判斷所述設(shè)備是被替換,則刪除所述非易失性存儲器中的所述異常信息;相應(yīng)地, 所述狀態(tài)恢復(fù)單元用于若所述替換判斷單元判斷所述設(shè)備未被替換,則執(zhí)行所述狀態(tài)恢
Μ. ο本實施例中,計算機系統(tǒng)通過狀態(tài)恢復(fù)單元根據(jù)NVM中存儲的異常信息對對應(yīng)的重新請求上線的已下線的設(shè)備進(jìn)行狀態(tài)恢復(fù),避免了由于設(shè)備異常而下線的設(shè)備作為正常設(shè)備重新上線而導(dǎo)致的系統(tǒng)不穩(wěn)定,提高了計算機系統(tǒng)的穩(wěn)定性。上述系統(tǒng)實施例中各單元可設(shè)置在BIOS中。最后應(yīng)說明的是以上實施例僅用以說明本發(fā)明的技術(shù)方案,而非對其限制;盡管參照前述實施例對本發(fā)明進(jìn)行了詳細(xì)的說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解其依然可以對前述各實施例所記載的技術(shù)方案進(jìn)行修改,或者對其中部分技術(shù)特征進(jìn)行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實施例技術(shù)方案的精神和范圍。
權(quán)利要求
1.一種提高計算機系統(tǒng)穩(wěn)定性的方法,其特征在于,包括計算機系統(tǒng)在啟動或運行時,收集所述計算機系統(tǒng)的設(shè)備產(chǎn)生的錯誤數(shù)據(jù); 將所述錯誤數(shù)據(jù)存儲到非易失性存儲器中;所述計算機系統(tǒng)重啟時,根據(jù)所述錯誤數(shù)據(jù)對產(chǎn)生所述錯誤數(shù)據(jù)的設(shè)備進(jìn)行狀態(tài)恢復(fù)處理。
2.根據(jù)權(quán)利要求1所述的提高計算機系統(tǒng)穩(wěn)定性的方法,其特征在于,所述錯誤數(shù)據(jù)為所述設(shè)備的異常信息;所述方法還包括所述計算機系統(tǒng)在運行時根據(jù)所述異常信息,對請求重新上線的已下線的所述設(shè)備進(jìn)行狀態(tài)恢復(fù)。
3.根據(jù)權(quán)利要求1或2所述的提高計算機系統(tǒng)穩(wěn)定性的方法,其特征在于,所述錯誤數(shù)據(jù)為雙列直插式存儲模塊DIMM隔離信息;根據(jù)所述錯誤數(shù)據(jù)對所述計算機系統(tǒng)中對應(yīng)的設(shè)備進(jìn)行狀態(tài)恢復(fù)處理的過程,包括 根據(jù)所述DIMM隔離信息對所述計算機系統(tǒng)中對應(yīng)的DIMM進(jìn)行隔離。
4.根據(jù)權(quán)利要求3所述的提高計算機系統(tǒng)穩(wěn)定性的方法,其特征在于,所述計算機系統(tǒng)在運行時判斷所述DMM是否被替換,若是,則將存儲在所述非易失性存儲器中的所述 DIMM隔離信息進(jìn)行清除;否則,所述計算機系統(tǒng)重啟時將所述DIMM隔離。
5.根據(jù)權(quán)利要求1或2所述的提高計算機系統(tǒng)穩(wěn)定性的方法,其特征在于,所述錯誤數(shù)據(jù)為處理器核的禁用信息;根據(jù)所述錯誤數(shù)據(jù)對所述計算機系統(tǒng)中對應(yīng)的設(shè)備進(jìn)行狀態(tài)恢復(fù)處理的過程,包括 根據(jù)所述處理器核的禁用信息禁止所述計算機系統(tǒng)中對應(yīng)的處理器核參與PBSP的選擇,或禁用所述計算機系統(tǒng)中對應(yīng)的處理器核。
6.根據(jù)權(quán)利要求1或2所述的提高計算機系統(tǒng)穩(wěn)定性的方法,其特征在于,所述錯誤數(shù)據(jù)為緩存禁用信息;根據(jù)所述錯誤數(shù)據(jù)對所述計算機系統(tǒng)中對應(yīng)的設(shè)備進(jìn)行狀態(tài)恢復(fù)處理的過程,包括 根據(jù)所述緩存禁用信息重新關(guān)閉所述計算機系統(tǒng)中對應(yīng)的緩存。
7.一種提高計算機系統(tǒng)穩(wěn)定性的方法,其特征在于,包括計算機系統(tǒng)在運行時,收集所述計算機系統(tǒng)的設(shè)備中發(fā)生異常的設(shè)備的異常信息;將發(fā)生異常的設(shè)備的所述異常信息存儲到非易失性存儲器中;所述計算機系統(tǒng)根據(jù)所述異常信息對請求重新上線的已下線的所述設(shè)備進(jìn)行狀態(tài)恢復(fù) ο
8.根據(jù)權(quán)利要求7所述的提高計算機系統(tǒng)穩(wěn)定性的方法,其特征在于,計算機系統(tǒng)在運行時將發(fā)生異常的設(shè)備的異常信息存儲到所述非易失性存儲器中之后,還包括所述計算機系統(tǒng)判斷所述設(shè)備是否被替換,若是,則刪除所述非易失性存儲器中的所述異常信息; 否則,執(zhí)行所述狀態(tài)恢復(fù)。
9.一種計算機系統(tǒng),其特征在于,包括錯誤收集單元,用于在計算機系統(tǒng)運行或啟動時,收集所述計算機系統(tǒng)的設(shè)備產(chǎn)生的錯誤數(shù)據(jù);存儲單元,用于將所述錯誤數(shù)據(jù)存儲到非易失性存儲器中;恢復(fù)處理單元,用于在所述計算機系統(tǒng)重啟時,根據(jù)所述錯誤數(shù)據(jù)對產(chǎn)生所述錯誤數(shù)據(jù)的設(shè)備進(jìn)行狀態(tài)恢復(fù)處理。
10.根據(jù)權(quán)利要求9所述的計算機系統(tǒng),其特征在于,所述錯誤數(shù)據(jù)為所述設(shè)備的異常 fn息;所述恢復(fù)處理單元還用于在所述計算機系統(tǒng)運行時根據(jù)所述異常信息,對請求重新上線的已下線的所述設(shè)備進(jìn)行狀態(tài)恢復(fù)。
11.根據(jù)權(quán)利要求9或10所述的計算機系統(tǒng),其特征在于,所述錯誤數(shù)據(jù)為雙列直插式存儲模塊DIMM隔離信息;所述恢復(fù)處理單元具體用于根據(jù)DIMM隔離信息對所述計算機系統(tǒng)中對應(yīng)的DMM進(jìn)行隔離。
12.根據(jù)權(quán)利要求11所述的計算機系統(tǒng),其特征在于,還包括替換判斷單元,用于在所述計算機系統(tǒng)運行時判斷所述DIMM是否被替換;信息清除單元,用于若所述替換判斷單元判斷所述DIMM是被替換,則將存儲在所述非易失性存儲器中的所述DIMM隔離信息進(jìn)行清除;所述恢復(fù)處理單元,用于若所述替換判斷單元判斷所述DIMM未被替換,則在所述計算機系統(tǒng)重啟時將所述DIMM隔離。
13.根據(jù)權(quán)利要求9或10所述的計算機系統(tǒng),其特征在于,所述錯誤數(shù)據(jù)為處理器核的禁用信息;所述恢復(fù)處理單元具體用于根據(jù)處理器核的禁用信息禁止所述計算機系統(tǒng)中對應(yīng)的處理器核參與PBSP的選擇,或禁用所述計算機系統(tǒng)中對應(yīng)的處理器核。
14.根據(jù)權(quán)利要求9或10所述的計算機系統(tǒng),其特征在于,所述錯誤數(shù)據(jù)為緩存禁用信息;所述恢復(fù)處理單元具體用于根據(jù)緩存禁用信息重新關(guān)閉所述計算機系統(tǒng)中對應(yīng)的緩存。
15.一種計算機系統(tǒng),其特征在于,包括異常信息收集單元,用于在計算機系統(tǒng)運行時,收集所述計算機系統(tǒng)的設(shè)備中發(fā)生異常的設(shè)備的異常信息;存儲單元,用于將發(fā)生異常的設(shè)備的所述異常信息存儲到非易失性存儲器中;狀態(tài)恢復(fù)單元,用于根據(jù)所述異常信息對請求重新上線的已下線的所述設(shè)備進(jìn)行狀態(tài)恢復(fù)。
16.根據(jù)權(quán)利要求15所述的計算機系統(tǒng),其特征在于,還包括替換判斷單元,用于在所述計算機系統(tǒng)運行時將發(fā)生異常的設(shè)備的異常信息存儲到所述非易失性存儲器中之后,判斷所述設(shè)備是否被替換;信息刪除單元,用于若所述替換判斷單元判斷所述設(shè)備是被替換,則刪除所述非易失性存儲器中的所述異常信息;所述狀態(tài)恢復(fù)單元,用于若所述替換判斷單元判斷所述設(shè)備未被替換,則執(zhí)行所述狀態(tài)恢復(fù)。
全文摘要
本發(fā)明涉及一種提高計算機系統(tǒng)穩(wěn)定性的方法及計算機系統(tǒng),提高計算機系統(tǒng)穩(wěn)定性的方法包括計算機系統(tǒng)在啟動或運行時,收集所述計算機系統(tǒng)的設(shè)備產(chǎn)生的錯誤數(shù)據(jù);將所述錯誤數(shù)據(jù)存儲到非易失性存儲器中;所述計算機系統(tǒng)重啟時,根據(jù)所述錯誤數(shù)據(jù)對產(chǎn)生所述錯誤數(shù)據(jù)的設(shè)備進(jìn)行狀態(tài)恢復(fù)處理。通過在計算機系統(tǒng)運行中將錯誤數(shù)據(jù)記錄到非易失性存儲器中,并在重新啟動過程中讀取非易失性存儲器中的錯誤數(shù)據(jù)對計算機系統(tǒng)中對應(yīng)的設(shè)備進(jìn)行狀態(tài)恢復(fù)處理,解決了計算機系統(tǒng)在重啟后設(shè)備狀態(tài)初始化導(dǎo)致的計算機系統(tǒng)之前對一些異?;蝾A(yù)測會損壞的設(shè)備的禁用、隔離等處理失效,直接導(dǎo)致系統(tǒng)穩(wěn)定性的降低的問題,提高了計算機系統(tǒng)的穩(wěn)定性。
文檔編號G06F11/07GK102369513SQ201180001512
公開日2012年3月7日 申請日期2011年8月31日 優(yōu)先權(quán)日2011年8月31日
發(fā)明者張斌 申請人:華為技術(shù)有限公司