板載故障記錄原理解析
OBFL基線記錄的創(chuàng)建獨立于任何電路板故障。OBFL系統(tǒng)應(yīng)一直保持一個初始基線記錄和至少一個近期基線記錄。在完成對OBFL的系統(tǒng)現(xiàn)場配置、首次成功將電路板件投入使用之后,就會立即生成初始基線。首次創(chuàng)建近期基線記錄的時候,將使用初始基線記錄。創(chuàng)建近期基線記錄的目的,是為了獲取OBFL資源的近期值。隨后每次成功的電路板復(fù)位都會創(chuàng)建后續(xù)的基線。OBFL還會要求提供存檔的舊基線。任何穩(wěn)定的基線都會被標(biāo)注為“優(yōu)良”基線,并在故障排查過程中用作參考基線。如果沒有優(yōu)良基線記錄,初級基線記錄將用作參考基線。
基線記錄將獲取特定的軟硬件配置詳情,并存儲在非易失性存儲器中。基線記錄的硬件部分包括電路板配置數(shù)據(jù)詳情,如機架編號、電路板件的插槽號、序列號、子卡標(biāo)識詳情、FPGA和ASIC修訂號等。該部分還應(yīng)該存儲諸如SRAM/SDRAM/DDR這樣的板載存儲器類型、序列號和配置詳細信息。BIOS版本、固件版本、OS詳情和應(yīng)用軟件版本應(yīng)存儲在軟件基線記錄下。該記錄在縮小由近期軟硬件升級造成的電路板故障范圍時非常有用。
基線記錄的第三部分存儲電路板環(huán)境變量值。任一存儲的電路板環(huán)境變量都存放有近期的“N”個值,最大實際值和電路板環(huán)境變量的最低允許值。環(huán)境變量包括電路板電源部分參數(shù),如電壓、電流以及來自電路板上一個或者多個感應(yīng)器的溫度讀數(shù)。
電路板環(huán)境變量的值定期采集、存儲為近期值,并同最大允許值進行比較。如果采集的值大于最大允許值,將采用當(dāng)前的時間戳更新環(huán)境錯誤事件(Environment Error Event)記錄。此外,電路板一般有多個電壓源和溫度感應(yīng)器。溫度應(yīng)定期記錄(比如每隔30分鐘),而電壓數(shù)據(jù)可以不需這么頻繁(比如每隔60分鐘)。
事件記錄
OBFL事件記錄負責(zé)存儲由板載存儲器故障、系統(tǒng)復(fù)位、意外事件、中斷錯誤或者電路板環(huán)境錯誤導(dǎo)致的硬件故障事件跡象(如電路板崩潰)。OBFL事件記錄可以分為下列幾類:
存儲錯誤:通常,SDRAM或者DDR錯誤分為可糾正的錯誤和不可糾正的致命錯誤兩種??杉m正錯誤可以通過存儲器中的其他硬件邏輯來查找并糾正單比特ECC錯誤來加以糾正。雖然這種錯誤不具有致命性,但它會給系統(tǒng)性能造成一定影響,因此記錄這種事件有助于排除系統(tǒng)性能錯誤。此外,記錄可糾正錯誤還可以就將來可能出現(xiàn)的致命錯誤提出告警。對于屬于不可糾正致命錯誤的多比特存儲錯誤,在事件日志中應(yīng)該登記錯誤地址位置、預(yù)計數(shù)據(jù)和其他存儲詳細信息。
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
評論