專利名稱:一種基于內(nèi)存錯(cuò)誤的服務(wù)器預(yù)警方法
技術(shù)領(lǐng)域:
本發(fā)明涉及大型服務(wù)器管理技術(shù)領(lǐng)域,具體地說(shuō)是一種基于內(nèi)存錯(cuò)誤的服務(wù)器預(yù)警方法。
背景技術(shù):
I、當(dāng)前的服務(wù)器監(jiān)控系統(tǒng)主要通過(guò)帶外監(jiān)控來(lái)監(jiān)控系統(tǒng)的溫度,電壓和風(fēng)扇轉(zhuǎn)速等信息控制系統(tǒng)外部環(huán)境的穩(wěn)定。這些帶外的方法無(wú)法覆蓋內(nèi)存系統(tǒng)內(nèi)存發(fā)生錯(cuò)誤,尤其是當(dāng)今服務(wù)器集群系統(tǒng)內(nèi)存條動(dòng)則成百上千,一旦出問(wèn)題很難定位;
2、當(dāng)前的監(jiān)控系統(tǒng)主要是基于時(shí)間的輪詢機(jī)制,這種機(jī)制雖然在一定程度上較為高效,但是如果系統(tǒng)不穩(wěn)定發(fā)生的時(shí)間點(diǎn)正好在兩次輪詢中間,那么監(jiān)控系統(tǒng)就無(wú)法獲取這個(gè)錯(cuò)誤,在一定程度上漏掉了這個(gè)錯(cuò)誤,可能導(dǎo)致非常嚴(yán)重的后果。
發(fā)明內(nèi)容
本發(fā)明的目的是提供一種基于內(nèi)存錯(cuò)誤的服務(wù)器預(yù)警方法。本發(fā)明的目的是按以下方式實(shí)現(xiàn)的,包括以下步驟
(1)檢查BIOS的設(shè)置是否開(kāi)啟了內(nèi)存預(yù)警;
(2)如果開(kāi)啟了內(nèi)存預(yù)警則轉(zhuǎn)步驟3),否則返回;
(3)在服務(wù)器初始化階段設(shè)置CPU中斷,當(dāng)其檢測(cè)到內(nèi)存錯(cuò)誤的時(shí)候發(fā)出SMI中斷;
(4)當(dāng)CPU檢測(cè)到ECC校驗(yàn)錯(cuò)誤時(shí)發(fā)出SMI中斷;
(5)BIOS的SMI Handler檢測(cè)BIOS的設(shè)置是否開(kāi)啟了 RAS,如果開(kāi)啟RAS則轉(zhuǎn)步驟
6),否則轉(zhuǎn)步驟8 ;
(6)檢測(cè)內(nèi)存錯(cuò)誤數(shù)是否達(dá)到了啟動(dòng)RAS特性的臨界值,若使是,轉(zhuǎn)步驟7),否則轉(zhuǎn)步驟8);
(7)根據(jù)RAS設(shè)置包括內(nèi)存熱備,內(nèi)存鏡像,內(nèi)存雙顆粒數(shù)據(jù)校正,來(lái)采取對(duì)應(yīng)的措施,并且通過(guò)IPMI命令將對(duì)應(yīng)的事件發(fā)送給BMC ;
(8)將發(fā)生錯(cuò)誤的內(nèi)存條的信息以及當(dāng)前其總計(jì)發(fā)生的錯(cuò)誤數(shù)目發(fā)送到BMC;
(9)BMC將BIOS發(fā)送的信息以易讀的方式實(shí)時(shí)解析到界面,并且實(shí)時(shí)的以Mail的方式發(fā)送給系統(tǒng)管理員,方便下次停機(jī)維護(hù)的時(shí)候?qū)?duì)應(yīng)發(fā)生錯(cuò)誤的內(nèi)存進(jìn)行處置。實(shí)時(shí)SMI中斷來(lái)處理內(nèi)存錯(cuò)誤,不需要操作系統(tǒng)有任何參與,在系統(tǒng)沒(méi)有發(fā)生內(nèi)存錯(cuò)誤時(shí)候不會(huì)有任何額外開(kāi)銷,高效監(jiān)控?;谙到y(tǒng)運(yùn)行時(shí)內(nèi)存的穩(wěn)定預(yù)警,區(qū)別于傳統(tǒng)的只能監(jiān)控溫度,電壓等因素的預(yù)警,是一種更深層次的預(yù)警機(jī)制。本發(fā)明的有益效果如下
I)通過(guò)系統(tǒng)中斷的方式處理錯(cuò)誤,在BIOS級(jí)別做全部處理,不需要操作系統(tǒng)的參與,更加實(shí)時(shí)高效;精確定位內(nèi)存出錯(cuò)位置,而且不會(huì)漏掉任何一個(gè)發(fā)生的錯(cuò)誤,更加安全;在系統(tǒng)發(fā)生內(nèi)存錯(cuò)誤時(shí)利用RAS特性做系統(tǒng)內(nèi)存低層次的恢復(fù),從而保證了系統(tǒng)的穩(wěn)定運(yùn)行,在大型企業(yè)級(jí)服務(wù)器集群上更為重要;
2)在系統(tǒng)內(nèi)存初始化時(shí)根據(jù)BIOS的設(shè)置選項(xiàng)選擇CPU在檢查到內(nèi)存ECC校驗(yàn)錯(cuò)誤時(shí)候是否發(fā)出SMI中斷;
3)在系統(tǒng)運(yùn)行的過(guò)程中,若CPU檢查到內(nèi)存ECC校驗(yàn)錯(cuò)誤,則通過(guò)中斷發(fā)送出來(lái);
4)BI0S在收到中斷后通過(guò)判斷錯(cuò)誤的級(jí)別是否需要采取進(jìn)一步的RAS恢復(fù),以及將錯(cuò)誤恢復(fù)結(jié)果和具體錯(cuò)誤內(nèi)存條信息發(fā)送到BMC ;
5)BMC來(lái)解析錯(cuò)誤具體信息并且將其發(fā)送到管理員郵箱,由系統(tǒng)管理員決定。
圖I是系統(tǒng)部署流程圖。
具體實(shí)施例方式參照說(shuō)明書附圖對(duì)本發(fā)明的方法作以下詳細(xì)地說(shuō)明。BIOS將預(yù)警功能在Setup界面上做給用戶做出選擇。具體實(shí)現(xiàn)流程
(1)如果開(kāi)啟了內(nèi)存預(yù)警則轉(zhuǎn)3,否則返回;
(2)在服務(wù)器的內(nèi)存初始化階段設(shè)置CPU對(duì)應(yīng)寄存器,當(dāng)其檢測(cè)到內(nèi)存錯(cuò)誤的時(shí)候發(fā)出SMI中斷;
(3)在SMI的Handler里面注冊(cè)對(duì)應(yīng)此功能的調(diào)用函數(shù),在入口處判斷是否是自己需要處理的事件;
(4)當(dāng)CPU檢測(cè)到ECC校驗(yàn)錯(cuò)誤時(shí)發(fā)出SMI中斷時(shí)。SMIHandler需要做得事情包括
①檢測(cè)BIOS的設(shè)置是否開(kāi)啟了RAS,如果開(kāi)啟RAS則轉(zhuǎn)②否則轉(zhuǎn)④;
②檢測(cè)內(nèi)存錯(cuò)誤數(shù)是否達(dá)到了啟動(dòng)RAS特性的臨界值,若使是,轉(zhuǎn)③,否則轉(zhuǎn)④;
③根據(jù)RAS設(shè)置(內(nèi)存熱備,內(nèi)存鏡像,內(nèi)存雙顆粒數(shù)據(jù)校正)來(lái)采取對(duì)應(yīng)的措施,并且通過(guò)IPMI命令將對(duì)應(yīng)的事件發(fā)送給BMC ;
④將發(fā)生錯(cuò)誤的內(nèi)存條的信息以及當(dāng)前其總計(jì)發(fā)生的錯(cuò)誤數(shù)目發(fā)送到BMC。BMC將BIOS發(fā)送的信息以易讀的方式實(shí)時(shí)解析到界面,并且實(shí)時(shí)的以Mail的方式發(fā)送給系統(tǒng)管理員,方便下次停機(jī)維護(hù)的時(shí)候?qū)?duì)應(yīng)發(fā)生錯(cuò)誤的內(nèi)存
除說(shuō)明書所述的技術(shù)特征外,均為本專業(yè)技術(shù)人員的已知技術(shù)。
權(quán)利要求
1.一種基于內(nèi)存錯(cuò)誤的服務(wù)器預(yù)警方法,其特征在于包括以下步驟 (1)檢查BIOS的設(shè)置是否開(kāi)啟了內(nèi)存預(yù)警; (2)如果開(kāi)啟了內(nèi)存預(yù)警則轉(zhuǎn)步驟(3),否則返回; (3)在服務(wù)器初始化階段設(shè)置CPU中斷,當(dāng)其檢測(cè)到內(nèi)存錯(cuò)誤的時(shí)候發(fā)出SMI中斷; (4)當(dāng)CPU檢測(cè)到ECC校驗(yàn)錯(cuò)誤時(shí)發(fā)出SMI中斷; (5)BI0S的SMIHandler檢測(cè)BIOS的設(shè)置是否開(kāi)啟了 RAS,如果開(kāi)啟RAS則轉(zhuǎn)步驟(6),否則轉(zhuǎn)步驟8 ; (6)檢測(cè)內(nèi)存錯(cuò)誤數(shù)是否達(dá)到了啟動(dòng)RAS特性的臨界值,若使是,轉(zhuǎn)步驟(7),否則轉(zhuǎn)步驟(8); (7)根據(jù)RAS設(shè)置包括內(nèi)存熱備,內(nèi)存鏡像,內(nèi)存雙顆粒數(shù)據(jù)校正,來(lái)采取對(duì)應(yīng)的措施,并且通過(guò)IPMI命令將對(duì)應(yīng)的事件發(fā)送給BMC ; (8)將發(fā)生錯(cuò)誤的內(nèi)存條的信息以及當(dāng)前其總計(jì)發(fā)生的錯(cuò)誤數(shù)目發(fā)送到BMC; (9)BMC將BIOS發(fā)送的信息以易讀的方式實(shí)時(shí)解析到界面,并且實(shí)時(shí)的以Mail的方式發(fā)送給系統(tǒng)管理員,方便下次停機(jī)維護(hù)的時(shí)候?qū)?duì)應(yīng)發(fā)生錯(cuò)誤的內(nèi)存進(jìn)行處置。
2.根據(jù)權(quán)利要求I所述的服務(wù)器預(yù)警方法,其特征在于實(shí)時(shí)SMI中斷來(lái)處理內(nèi)存錯(cuò)誤,不需要操作系統(tǒng)有任何參與,在系統(tǒng)沒(méi)有發(fā)生內(nèi)存錯(cuò)誤時(shí)候不會(huì)有任何額外開(kāi)銷,高效監(jiān)控。
3.根據(jù)權(quán)利要求I所述的服務(wù)器預(yù)警方法,其特征在于基于系統(tǒng)運(yùn)行時(shí)內(nèi)存的穩(wěn)定預(yù)警,區(qū)別于傳統(tǒng)的只能監(jiān)控溫度,電壓等因素的預(yù)警,是一種更深層次的預(yù)警機(jī)制。
全文摘要
本發(fā)明提供一種基于內(nèi)存錯(cuò)誤的服務(wù)器預(yù)警方法,1)通過(guò)系統(tǒng)中斷的方式處理錯(cuò)誤,在BIOS級(jí)別做全部處理,不需要操作系統(tǒng)的參與,精確定位內(nèi)存出錯(cuò)位置,在系統(tǒng)發(fā)生內(nèi)存錯(cuò)誤時(shí)利用RAS特性做系統(tǒng)內(nèi)存低層次的恢復(fù),從而保證了系統(tǒng)的穩(wěn)定運(yùn)行,在大型企業(yè)級(jí)服務(wù)器集群上更為重要。2)在系統(tǒng)內(nèi)存初始化時(shí)根據(jù)BIOS的設(shè)置選項(xiàng)選擇CPU在檢查到內(nèi)存ECC校驗(yàn)錯(cuò)誤時(shí)候是否發(fā)出SMI中斷。3)在系統(tǒng)運(yùn)行的過(guò)程中,若CPU檢查到內(nèi)存ECC校驗(yàn)錯(cuò)誤,則通過(guò)中斷發(fā)送出來(lái)。4)BIOS在收到中斷后通過(guò)判斷錯(cuò)誤的級(jí)別是否需要采取進(jìn)一步的RAS恢復(fù),以及將錯(cuò)誤恢復(fù)結(jié)果和具體錯(cuò)誤內(nèi)存條信息發(fā)送到BMC。5)BMC來(lái)解析錯(cuò)誤具體信息并且將其發(fā)送到管理員郵箱,由系統(tǒng)管理員決定。
文檔編號(hào)G06F11/10GK102681909SQ20121012896
公開(kāi)日2012年9月19日 申請(qǐng)日期2012年4月28日 優(yōu)先權(quán)日2012年4月28日
發(fā)明者曹光耀 申請(qǐng)人:浪潮電子信息產(chǎn)業(yè)股份有限公司