故障處理裝置及方法
【專利摘要】本發(fā)明公開了一種故障處理裝置及方法,屬于計(jì)算機(jī)【技術(shù)領(lǐng)域】。所述方法包括:統(tǒng)計(jì)服務(wù)器中的硬件模塊在預(yù)定時(shí)間段內(nèi)產(chǎn)生可糾正故障中斷的頻率;檢測(cè)頻率是否大于禁能閾值;當(dāng)檢測(cè)到頻率大于禁能閾值時(shí),將硬件模塊的可糾正故障中斷由使能狀態(tài)切換為禁能狀態(tài);解決了當(dāng)硬件模塊在短時(shí)間內(nèi)發(fā)生大量可糾正故障時(shí),操作系統(tǒng)將處于持續(xù)的故障處理狀態(tài),占用了操作系統(tǒng)大量的處理資源,甚至導(dǎo)致操作系統(tǒng)不能正常運(yùn)行的問題;達(dá)到了硬件模塊在短時(shí)間內(nèi)發(fā)生大量可糾正故障時(shí),減少產(chǎn)生可糾正故障中斷,使操作系統(tǒng)能夠正常運(yùn)行,提高操作系統(tǒng)的運(yùn)行效率的效果。
【專利說明】故障處理裝置及方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及計(jì)算機(jī)【技術(shù)領(lǐng)域】,特別涉及一種故障處理裝置及方法。
【背景技術(shù)】
[0002] 可糾正故障是服務(wù)器在運(yùn)行時(shí)產(chǎn)生的一種常見的硬件故障。
[0003] 當(dāng)發(fā)生可糾正故障時(shí),硬件模塊根據(jù)可糾正故障生成可糾正故障中斷(英文: Corrected Machine-Qieck Error Interrupt;簡(jiǎn)稱;CMCI),并通知操作系統(tǒng)進(jìn)入中斷處理 程序?qū)υ摽杉m正故障中斷進(jìn)行處理,操作系統(tǒng)根據(jù)可糾正故障中斷確定硬件模塊并進(jìn)行相 應(yīng)的故障處理。W該可糾正故障發(fā)生在內(nèi)存中為例,操作系統(tǒng)中的中斷處理程序處理可糾 正故障中斷的步驟如下:
[0004] 1、中斷處理程序收集該可糾正故障相應(yīng)的故障數(shù)據(jù);
[0005] 2、中斷處理程序?qū)⑹占降墓收蠑?shù)據(jù)中的故障物理地址翻譯為對(duì)應(yīng)的操作系統(tǒng) 下的故障邏輯地址;
[0006] 3、中斷處理程序?qū)收线壿嫷刂匪鶎俚膬?nèi)存頁(yè)面進(jìn)行可糾正故障次數(shù)統(tǒng)計(jì);
[0007] 4、中斷處理程序?qū)υ摽杉m正故障執(zhí)行故障處理操作。
[0008] 在實(shí)現(xiàn)本發(fā)明的過程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)至少存在W下問題;當(dāng)硬件模塊在 短時(shí)間內(nèi)發(fā)生大量的可糾正故障,也即發(fā)生可糾正故障風(fēng)暴時(shí),硬件模塊將產(chǎn)生大量的可 糾正故障中斷并通知操作系統(tǒng)進(jìn)入中斷處理程序,操作系統(tǒng)需要對(duì)每個(gè)可糾正故障進(jìn)行上 述的故障處理,將處于持續(xù)的故障處理狀態(tài),占用了操作系統(tǒng)大量的處理資源,甚至導(dǎo)致操 作系統(tǒng)不能正常運(yùn)行。
【發(fā)明內(nèi)容】
[0009] 為了解決【背景技術(shù)】中當(dāng)硬件模塊在短時(shí)間內(nèi)發(fā)生大量可糾正故障時(shí),操作系統(tǒng)將 處于持續(xù)的故障處理狀態(tài),占用了操作系統(tǒng)大量的處理資源,甚至導(dǎo)致操作系統(tǒng)不能正常 運(yùn)行的問題,本發(fā)明實(shí)施例提供了一種故障裝置及方法。所述技術(shù)方案如下:
[0010] 第一方面,提供了一種故障處理裝置,用于包括至少一個(gè)硬件模塊的服務(wù)器中,所 述裝置包括:
[0011] 統(tǒng)計(jì)模塊,用于統(tǒng)計(jì)所述服務(wù)器中的硬件模塊在預(yù)定時(shí)間段內(nèi)產(chǎn)生可糾正故障中 斷的頻率,所述可糾正故障中斷是由所述硬件模塊在發(fā)生可糾正故障時(shí)所產(chǎn)生的中斷;
[0012] 檢測(cè)模塊,用于檢測(cè)所述頻率是否大于禁能闊值;
[0013] 第一切換模塊,用于當(dāng)檢測(cè)到所述頻率大于所述禁能闊值時(shí),將所述硬件模塊的 可糾正故障中斷由使能狀態(tài)切換為禁能狀態(tài)。
[0014] 在第一方面的第一種可能的實(shí)施方式中,所述統(tǒng)計(jì)模塊,包括:
[0015] 讀取模塊,用于通過中斷處理程序從機(jī)器校驗(yàn)異常MCE存儲(chǔ)器中讀取所述硬件模 塊在預(yù)定時(shí)間段內(nèi)產(chǎn)生的可糾正故障中斷的個(gè)數(shù),所述中斷處理程序是用于處理所述可糾 正故障的中斷處理程序,所述MCE存儲(chǔ)器是與所述硬件模塊對(duì)應(yīng)的MCE存儲(chǔ)器;
[0016] 計(jì)算模塊,用于通過所述中斷處理程序根據(jù)所述預(yù)定時(shí)間段和所述可糾正故障中 斷的個(gè)數(shù)統(tǒng)計(jì)出所述頻率;
[0017] 所述檢測(cè)模塊,用于通過所述中斷處理程序檢測(cè)所述頻率是否大于禁能闊值。
[0018] 在第一方面的第二種可能的實(shí)施方式中,所述裝置,還包括:
[0019] 啟動(dòng)模塊,用于在將所述硬件模塊的可糾正故障中斷由所述使能狀態(tài)切換為所述 禁能狀態(tài)時(shí),啟動(dòng)定時(shí)器;
[0020] 第二切換模塊,用于當(dāng)所述定時(shí)器計(jì)時(shí)至預(yù)定時(shí)長(zhǎng)時(shí),將所述硬件模塊的可糾正 故障中斷由所述禁能狀態(tài)切換為所述使能狀態(tài)。
[0021] 在第一方面的第H種可能的實(shí)施方式中,所述裝置,還包括:
[0022] 第一查找模塊,用于獲取所述服務(wù)器中所處理的業(yè)務(wù)對(duì)實(shí)時(shí)性要求的級(jí)別,所述 業(yè)務(wù)是基于所述服務(wù)器中的至少一個(gè)硬件模塊所運(yùn)行的任務(wù);根據(jù)所述級(jí)別在第一關(guān)系表 中查找對(duì)應(yīng)的禁能闊值,所述第一關(guān)系表存儲(chǔ)有至少一個(gè)級(jí)別和與每個(gè)所述級(jí)別所對(duì)應(yīng)的 禁能闊值,所述第一關(guān)系表中的至少一個(gè)級(jí)別中包括獲取到的所述級(jí)別;
[0023] 或,
[0024] 第二查找模塊,用于獲取所述服務(wù)器的業(yè)務(wù)處理能力等級(jí),所述業(yè)務(wù)處理能力等 級(jí)基于所述至少一個(gè)硬件模塊確定;根據(jù)所述業(yè)務(wù)處理能力等級(jí)在第二關(guān)系表中查找對(duì)應(yīng) 的禁能闊值,所述第二關(guān)系表存儲(chǔ)有至少一個(gè)業(yè)務(wù)處理能力等級(jí)和與每個(gè)所述業(yè)務(wù)處理能 力等級(jí)所對(duì)應(yīng)的禁能闊值,所述第二關(guān)系表中的至少一個(gè)業(yè)務(wù)處理能力等級(jí)中包括獲取到 的所述業(yè)務(wù)處理能力等級(jí)。
[0025] 結(jié)合第一方面的第二種可能的實(shí)施方式,在第一方面的第四種可能的實(shí)施方式 中,所述裝置,還包括:
[0026] 第H查找模塊,用于獲取所述服務(wù)器中所處理的業(yè)務(wù)對(duì)實(shí)時(shí)性要求的級(jí)別,所述 業(yè)務(wù)是基于所述服務(wù)器中的至少一個(gè)硬件模塊所運(yùn)行的任務(wù);根據(jù)所述級(jí)別在第H關(guān)系表 中查找對(duì)應(yīng)的定時(shí)器預(yù)定時(shí)長(zhǎng),所述第H關(guān)系表存儲(chǔ)有至少一個(gè)級(jí)別與每個(gè)所述級(jí)別所對(duì) 應(yīng)的定時(shí)器預(yù)定時(shí)長(zhǎng),所述第H關(guān)系表中的至少一個(gè)級(jí)別中包括獲取到的所述級(jí)別;
[0027] 或,
[0028] 第四查找模塊,用于獲取所述服務(wù)器的業(yè)務(wù)處理能力等級(jí),所述業(yè)務(wù)處理能力等 級(jí)基于所述至少一個(gè)硬件模塊確定;根據(jù)所述業(yè)務(wù)處理能力等級(jí)在第四關(guān)系表中查找對(duì)應(yīng) 的定時(shí)器預(yù)定時(shí)長(zhǎng),所述第四關(guān)系表存儲(chǔ)有至少一個(gè)業(yè)務(wù)處理能力等級(jí)與每個(gè)所述業(yè)務(wù)處 理能力等級(jí)所對(duì)應(yīng)的定時(shí)器預(yù)定時(shí)長(zhǎng),所述第四關(guān)系表中的至少一個(gè)業(yè)務(wù)處理能力等級(jí)中 包括獲取到的所述業(yè)務(wù)處理能力等級(jí)。
[0029] 結(jié)合第一方面的第二種可能的實(shí)施方式,在第一方面的第五種可能的實(shí)施方式 中,所述第一切換模塊,用于將與所述硬件模塊對(duì)應(yīng)的可糾正故障中斷使能寄存器中的標(biāo) 識(shí)值設(shè)置為禁能值;
[0030] 所述第二切換模塊,用于將與所述硬件模塊對(duì)應(yīng)的可糾正故障中斷使能寄存器中 的標(biāo)識(shí)值設(shè)置為使能值。
[0031] 第二方面,提供了一種故障處理方法,用于包括至少一個(gè)硬件模塊的服務(wù)器中,所 述方法包括:
[0032] 統(tǒng)計(jì)所述服務(wù)器中的硬件模塊在預(yù)定時(shí)間段內(nèi)產(chǎn)生可糾正故障中斷的頻率,所述 可糾正故障中斷是由所述硬件模塊在發(fā)生可糾正故障時(shí)所產(chǎn)生的中斷;
[0033] 檢測(cè)所述頻率是否大于禁能闊值;
[0034] 當(dāng)檢測(cè)到所述頻率大于所述禁能闊值時(shí),將所述硬件模塊的可糾正故障中斷由使 能狀態(tài)切換為禁能狀態(tài)。
[0035] 在第二方面的第一種可能的實(shí)施方式中,所述統(tǒng)計(jì)所述服務(wù)器中的硬件模塊在預(yù) 定時(shí)間段內(nèi)產(chǎn)生可糾正故障中斷的頻率,包括:
[0036] 通過中斷處理程序從機(jī)器校驗(yàn)異常MCE存儲(chǔ)器中讀取所述硬件模塊在預(yù)定時(shí)間 段內(nèi)產(chǎn)生的可糾正故障中斷的個(gè)數(shù),所述中斷處理程序是用于處理所述可糾正故障的中斷 處理程序,所述MCE存儲(chǔ)器是所述硬件模塊對(duì)應(yīng)的MCE存儲(chǔ)器;
[0037] 通過所述中斷處理程序根據(jù)所述預(yù)定時(shí)間段和所述可糾正故障中斷的個(gè)數(shù)統(tǒng)計(jì) 出所述頻率;
[0038] 所述檢測(cè)所述頻率是否大于禁能闊值,包括:
[0039] 通過所述中斷處理程序檢測(cè)所述頻率是否大于禁能闊值。
[0040] 在第二方面的第二種可能的實(shí)施方式中,所述方法,還包括:
[0041] 在將所述硬件模塊的可糾正故障中斷由所述使能狀態(tài)切換為所述禁能狀態(tài)時(shí),啟 動(dòng)定時(shí)器;
[0042] 當(dāng)所述定時(shí)器計(jì)時(shí)至預(yù)定時(shí)長(zhǎng)時(shí),將所述硬件模塊的可糾正故障中斷由所述禁能 狀態(tài)切換為所述使能狀態(tài)。
[0043] 在第二方面的第H種可能的實(shí)施方式中,所述檢測(cè)所述頻率是否大于禁能闊值之 前,還包括:
[0044] 獲取所述服務(wù)器中所處理的業(yè)務(wù)對(duì)實(shí)時(shí)性要求的級(jí)別,所述業(yè)務(wù)是基于所述服務(wù) 器中的至少一個(gè)硬件模塊所運(yùn)行的任務(wù);根據(jù)所述級(jí)別在第一關(guān)系表中查找對(duì)應(yīng)的禁能闊 值,所述第一關(guān)系表存儲(chǔ)有至少一個(gè)級(jí)別和與每個(gè)所述級(jí)別所對(duì)應(yīng)的禁能闊值,所述第一 關(guān)系表中的至少一個(gè)級(jí)別中包括獲取到的所述級(jí)別;
[0045] 或,
[0046] 獲取所述服務(wù)器的業(yè)務(wù)處理能力等級(jí),所述業(yè)務(wù)處理能力等級(jí)基于所述至少一個(gè) 硬件模塊確定;根據(jù)所述業(yè)務(wù)處理能力等級(jí)在第二關(guān)系表中查找對(duì)應(yīng)的禁能闊值,所述第 二關(guān)系表存儲(chǔ)有至少一個(gè)業(yè)務(wù)處理能力等級(jí)和與每個(gè)所述業(yè)務(wù)處理能力等級(jí)所對(duì)應(yīng)的禁 能闊值,所述第二關(guān)系表中的至少一個(gè)業(yè)務(wù)處理能力等級(jí)中包括獲取到的所述業(yè)務(wù)處理能 力等級(jí)。
[0047] 結(jié)合第二方面的第二種可能的實(shí)施方式,在第一方面的第四種可能的實(shí)施方式 中,所述在將所述硬件模塊的可糾正故障中斷由所述使能狀態(tài)切換為所述禁能狀態(tài)時(shí),啟 動(dòng)定時(shí)器之前,還包括:
[0048] 獲取所述服務(wù)器中所處理的業(yè)務(wù)對(duì)實(shí)時(shí)性要求的級(jí)別,所述業(yè)務(wù)是基于所述服務(wù) 器中的至少一個(gè)硬件模塊所運(yùn)行的任務(wù);根據(jù)所述級(jí)別在第H關(guān)系表中查找對(duì)應(yīng)的定時(shí) 器預(yù)定時(shí)長(zhǎng),所述第H關(guān)系表存儲(chǔ)有至少一個(gè)級(jí)別與每個(gè)所述級(jí)別所對(duì)應(yīng)的定時(shí)器預(yù)定時(shí) 長(zhǎng),所述第H關(guān)系表中的至少一個(gè)級(jí)別中包括獲取到的所述級(jí)別;
[0049] 或,
[0050] 獲取所述服務(wù)器的業(yè)務(wù)處理能力等級(jí),所述業(yè)務(wù)處理能力等級(jí)基于所述至少一個(gè) 硬件模塊確定;根據(jù)所述業(yè)務(wù)處理能力等級(jí)在第四關(guān)系表中查找對(duì)應(yīng)的定時(shí)器預(yù)定時(shí)長(zhǎng), 所述第四關(guān)系表存儲(chǔ)有至少一個(gè)業(yè)務(wù)處理能力等級(jí)與每個(gè)所述業(yè)務(wù)處理能力等級(jí)所對(duì)應(yīng) 的定時(shí)器預(yù)定時(shí)長(zhǎng),所述第四關(guān)系表中的至少一個(gè)業(yè)務(wù)處理能力等級(jí)中包括獲取到的所述 業(yè)務(wù)處理能力等級(jí)。
[0051] 結(jié)合第二方面的第二種可能的實(shí)施方式,在第二方面的第五種可能的實(shí)施方式 中,所述將所述硬件模塊的可糾正故障中斷由使能狀態(tài)切換為禁能狀態(tài),包括:
[0052] 將與所述硬件模塊對(duì)應(yīng)的可糾正故障中斷使能寄存器中的標(biāo)識(shí)值設(shè)置為禁能 值;
[0053] 所述將所述硬件模塊的可糾正故障中斷由所述禁能狀態(tài)切換為所述使能狀態(tài),包 括:
[0054] 將與所述硬件模塊對(duì)應(yīng)的可糾正故障中斷使能寄存器中的標(biāo)識(shí)值設(shè)置為使能值。 [00巧]本發(fā)明實(shí)施例提供的技術(shù)方案帶來(lái)的有益效果是:
[0056] 通過統(tǒng)計(jì)服務(wù)器中的硬件模塊在預(yù)定時(shí)間段內(nèi)產(chǎn)生可糾正故障中斷的頻率;檢測(cè) 頻率是否大于禁能闊值;當(dāng)檢測(cè)到頻率大于禁能闊值時(shí),將硬件模塊的可糾正故障中斷由 使能狀態(tài)切換為禁能狀態(tài);解決了當(dāng)硬件模塊在短時(shí)間內(nèi)發(fā)生大量可糾正故障時(shí),操作系 統(tǒng)將處于持續(xù)的故障處理狀態(tài),占用了操作系統(tǒng)大量的處理資源,甚至導(dǎo)致操作系統(tǒng)不能 正常運(yùn)行的問題;達(dá)到了硬件模塊在短時(shí)間內(nèi)發(fā)生大量可糾正故障時(shí),減少產(chǎn)生可糾正故 障中斷,使操作系統(tǒng)能夠正常運(yùn)行,提高操作系統(tǒng)的運(yùn)行效率的效果。
【專利附圖】
【附圖說明】
[0057] 為了更清楚地說明本發(fā)明實(shí)施例中的技術(shù)方案,下面將對(duì)實(shí)施例描述中所需要使 用的附圖作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于 本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可W根據(jù)該些附圖獲得其他 的附圖。
[0058] 圖1是本發(fā)明一個(gè)實(shí)施例提供的故障處理裝置的結(jié)構(gòu)方框圖;
[0059] 圖2是本發(fā)明另一個(gè)實(shí)施例提供的故障處理裝置的結(jié)構(gòu)方框圖;
[0060] 圖3A是本發(fā)明一個(gè)實(shí)施例提供的故障處理裝置的框圖;
[0061] 圖3B是本發(fā)明另一實(shí)施例提供的故障處理裝置的框圖;
[0062] 圖4是本發(fā)明一個(gè)實(shí)施例提供的故障處理方法的方法流程圖;
[0063] 圖5A是本發(fā)明另一個(gè)實(shí)施例提供的故障處理方法的方法流程圖;
[0064] 圖5B是本發(fā)明另一實(shí)施例提供的故障處理方法的實(shí)施示意圖;
[0065] 圖6是本發(fā)明再一個(gè)實(shí)施例提供的故障處理方法的方法流程圖。
【具體實(shí)施方式】
[0066] 為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合附圖對(duì)本發(fā)明實(shí)施方 式作進(jìn)一步地詳細(xì)描述。
[0067] 為了方便理解,首先對(duì)本發(fā)明實(shí)施例中出現(xiàn)的一些名詞進(jìn)行解釋:
[0068] 禁能狀態(tài);指硬件模塊無(wú)法根據(jù)可糾正故障產(chǎn)生可糾正故障中斷的狀態(tài),即操作 系統(tǒng)接收不到該硬件模塊產(chǎn)生的可糾正故障中斷的狀態(tài)。每個(gè)硬件模塊產(chǎn)生可糾正故障中 斷的機(jī)制通?;ハ嗒?dú)立。
[0069] 使能狀態(tài);指硬件模塊可W根據(jù)可糾正故障產(chǎn)生可糾正故障中斷的狀態(tài),即操作 系統(tǒng)可W接收到該硬件模塊產(chǎn)生的可糾正故障中斷的狀態(tài)。
[0070] 正相關(guān)關(guān)系:指兩個(gè)變量的變化方向相同,即一個(gè)變量增大時(shí),對(duì)應(yīng)的另一個(gè)變 量也增大;一個(gè)變量減小時(shí),對(duì)應(yīng)的另一個(gè)變量也減小,兩者呈線性相關(guān)或非線性相關(guān)。
[0071] 負(fù)相關(guān)關(guān)系:指兩個(gè)變量的變化方向相反,即一個(gè)變量增大時(shí),對(duì)應(yīng)的另一個(gè)變 量減??;一個(gè)變量減小時(shí),對(duì)應(yīng)的另一個(gè)變量增大,兩者呈線性相關(guān)或非線性相關(guān)。
[0072] 可糾正故障中斷使能寄存器:通過對(duì)可糾正故障中斷使能寄存器中的標(biāo)識(shí)值進(jìn)行 設(shè)置,實(shí)現(xiàn)對(duì)硬件模塊的可糾正故障中斷在使能狀態(tài)和禁能狀態(tài)之間的切換。每個(gè)硬件模 塊對(duì)應(yīng)各自的可糾正故障中斷使能寄存器。
[0073] 請(qǐng)參考圖1,其示出了本發(fā)明一個(gè)實(shí)施例提供的故障處理裝置的結(jié)構(gòu)方框圖,該故 障處理裝置,包括:
[0074] 統(tǒng)計(jì)模塊110,用于統(tǒng)計(jì)服務(wù)器中的硬件模塊在預(yù)定時(shí)間段內(nèi)產(chǎn)生可糾正故障中 斷的頻率,該可糾正故障中斷是由硬件模塊在發(fā)生可糾正故障時(shí)所產(chǎn)生的中斷;
[0075] 檢測(cè)模塊120,用于檢測(cè)頻率是否大于禁能闊值;
[0076] 第一切換模塊130,用于當(dāng)檢測(cè)到頻率大于禁能闊值時(shí),將硬件模塊的可糾正故障 中斷由使能狀態(tài)切換為禁能狀態(tài)。
[0077] 綜上所述,本實(shí)施例提供的故障處理裝置,通過統(tǒng)計(jì)服務(wù)器中的硬件模塊在預(yù)定 時(shí)間段內(nèi)產(chǎn)生可糾正故障中斷的頻率;檢測(cè)頻率是否大于禁能闊值;當(dāng)檢測(cè)到頻率大于禁 能闊值時(shí),將硬件模塊的可糾正故障中斷由使能狀態(tài)切換為禁能狀態(tài);解決了當(dāng)硬件模塊 在短時(shí)間內(nèi)發(fā)生大量可糾正故障時(shí),操作系統(tǒng)將處于持續(xù)的故障處理狀態(tài),占用了操作系 統(tǒng)大量的處理資源,甚至導(dǎo)致操作系統(tǒng)不能正常運(yùn)行的問題;達(dá)到了硬件模塊在短時(shí)間內(nèi) 發(fā)生大量可糾正故障時(shí),減少產(chǎn)生可糾正故障中斷,使操作系統(tǒng)能夠正常運(yùn)行,提高操作系 統(tǒng)的運(yùn)行效率的效果。
[0078] 請(qǐng)參考圖2,其示出了本發(fā)明另一個(gè)實(shí)施例提供的故障處理裝置的結(jié)構(gòu)方框圖,該 故障處理裝置,包括:
[0079] 統(tǒng)計(jì)模塊210,用于統(tǒng)計(jì)服務(wù)器中的硬件模塊在預(yù)定時(shí)間段內(nèi)產(chǎn)生可糾正故障中 斷的頻率,該可糾正故障中斷是由硬件模塊在發(fā)生可糾正故障時(shí)所產(chǎn)生的中斷;
[0080] 檢測(cè)模塊220,用于檢測(cè)頻率是否大于禁能闊值;
[0081] 第一切換模塊230,用于當(dāng)檢測(cè)到頻率大于禁能闊值時(shí),將硬件模塊的可糾正故障 中斷由使能狀態(tài)切換為禁能狀態(tài)。
[0082] 可選地,統(tǒng)計(jì)模塊210,包括:
[0083] 讀取模塊211,用于通過中斷處理程序從機(jī)器校驗(yàn)異常(英文:Machine化eck Exception;簡(jiǎn)稱:MC巧存儲(chǔ)器中讀取硬件模塊在預(yù)定時(shí)間段內(nèi)產(chǎn)生的可糾正故障中斷的 個(gè)數(shù),該中斷處理程序是用于處理可糾正故障的中斷處理程序,該MCE存儲(chǔ)器是與硬件模 塊對(duì)應(yīng)的MCE存儲(chǔ)器;
[0084] 計(jì)算模塊212,用于通過中斷處理程序根據(jù)預(yù)定時(shí)間段和可糾正故障中斷的個(gè)數(shù) 統(tǒng)計(jì)出頻率;
[0085] 檢測(cè)模塊220,用于通過中斷處理程序檢測(cè)頻率是否大于禁能闊值。
[0086] 可選地,該裝置,還包括:
[0087] 啟動(dòng)模塊240,用于在將硬件模塊的可糾正故障中斷由使能狀態(tài)切換為禁能狀態(tài) 時(shí),啟動(dòng)定時(shí)器;
[0088] 第二切換模塊250,用于當(dāng)定時(shí)器計(jì)時(shí)至預(yù)定時(shí)長(zhǎng)時(shí),將硬件模塊的可糾正故障中 斷由禁能狀態(tài)切換為使能狀態(tài)。
[0089] 可選地,該裝置,還包括:
[0090] 第一查找模塊260,用于獲取服務(wù)器中所處理的業(yè)務(wù)對(duì)實(shí)時(shí)性要求的級(jí)別,該業(yè)務(wù) 是基于服務(wù)器中的至少一個(gè)硬件模塊所運(yùn)行的任務(wù);根據(jù)級(jí)別在第一關(guān)系表中查找對(duì)應(yīng)的 禁能闊值,該第一關(guān)系表存儲(chǔ)有至少一個(gè)級(jí)別和與每個(gè)級(jí)別所對(duì)應(yīng)的禁能闊值,該第一關(guān) 系表中的至少一個(gè)級(jí)別中包括獲取到的級(jí)別;
[0091] 或,
[0092] 第二查找模塊270,用于獲取服務(wù)器的業(yè)務(wù)處理能力等級(jí),該業(yè)務(wù)處理能力等級(jí) 基于至少一個(gè)硬件模塊確定;根據(jù)業(yè)務(wù)處理能力等級(jí)在第二關(guān)系表中查找對(duì)應(yīng)的禁能闊 值,該第二關(guān)系表存儲(chǔ)有至少一個(gè)業(yè)務(wù)處理能力等級(jí)和與每個(gè)業(yè)務(wù)處理能力等級(jí)所對(duì)應(yīng)的 禁能闊值,該第二關(guān)系表中的至少一個(gè)業(yè)務(wù)處理能力等級(jí)中包括獲取到的業(yè)務(wù)處理能力等 級(jí)。
[0093] 可選地,該裝置,還包括:
[0094] 第H查找模塊280,用于獲取服務(wù)器中所處理的業(yè)務(wù)對(duì)實(shí)時(shí)性要求的級(jí)別,該業(yè) 務(wù)是基于服務(wù)器中的至少一個(gè)硬件模塊所運(yùn)行的任務(wù);根據(jù)級(jí)別在第H關(guān)系表中查找對(duì)應(yīng) 的定時(shí)器預(yù)定時(shí)長(zhǎng),該第H關(guān)系表存儲(chǔ)有至少一個(gè)級(jí)別與每個(gè)級(jí)別所對(duì)應(yīng)的定時(shí)器預(yù)定時(shí) 長(zhǎng),該第H關(guān)系表中的至少一個(gè)級(jí)別中包括獲取到的級(jí)別;
[0095] 或,
[0096] 第四查找模塊290,用于服務(wù)器的業(yè)務(wù)處理能力等級(jí),該業(yè)務(wù)處理能力等級(jí)基于 至少一個(gè)硬件模塊確定;根據(jù)業(yè)務(wù)處理能力等級(jí)在第四關(guān)系表中查找對(duì)應(yīng)的定時(shí)器預(yù)定時(shí) 長(zhǎng),該第四關(guān)系表存儲(chǔ)有至少一個(gè)業(yè)務(wù)處理能力等級(jí)與每個(gè)業(yè)務(wù)處理能力等級(jí)所對(duì)應(yīng)的定 時(shí)器預(yù)定時(shí)長(zhǎng),該第四關(guān)系表中的至少一個(gè)業(yè)務(wù)處理能力等級(jí)中包括獲取到的業(yè)務(wù)處理能 力等級(jí)。
[0097] 可選地,第一切換模塊230,用于將與硬件模塊對(duì)應(yīng)的可糾正故障中斷使能寄存器 中的標(biāo)識(shí)值設(shè)置為禁能值;
[0098] 第二切換模塊250,用于將與硬件模塊對(duì)應(yīng)的可糾正故障中斷使能寄存器中的標(biāo) 識(shí)值設(shè)置為使能值。
[0099] 綜上所述,本實(shí)施例提供的故障處理裝置,通過統(tǒng)計(jì)服務(wù)器中的硬件模塊在預(yù)定 時(shí)間段內(nèi)產(chǎn)生可糾正故障中斷的頻率;檢測(cè)頻率是否大于禁能闊值;當(dāng)檢測(cè)到頻率大于禁 能闊值時(shí),將硬件模塊的可糾正故障中斷由使能狀態(tài)切換為禁能狀態(tài);解決了當(dāng)硬件模塊 在短時(shí)間內(nèi)發(fā)生大量可糾正故障時(shí),操作系統(tǒng)將處于持續(xù)的故障處理狀態(tài),占用了操作系 統(tǒng)大量的處理資源,甚至導(dǎo)致操作系統(tǒng)不能正常運(yùn)行的問題;達(dá)到了硬件模塊在短時(shí)間內(nèi) 發(fā)生大量可糾正故障時(shí),減少產(chǎn)生可糾正故障中斷,使操作系統(tǒng)能夠正常運(yùn)行,提高操作系 統(tǒng)的運(yùn)行效率的效果。
[0100] 本實(shí)施例還通過在硬件模塊的可糾正故障中斷為禁能狀態(tài)時(shí)設(shè)置定時(shí)器,當(dāng)定時(shí) 器計(jì)時(shí)至預(yù)定時(shí)長(zhǎng)時(shí),將硬件模塊的可糾正故障中斷由禁能狀態(tài)切換為使能狀態(tài),且在硬 件模塊產(chǎn)生可糾正故障中斷的頻率是否小于使能闊值時(shí)保持該使能狀態(tài),達(dá)到了及時(shí)處理 可糾正故障風(fēng)暴結(jié)束后產(chǎn)生的可糾正故障中斷的效果。
[0101] 請(qǐng)參考圖3A,其示出了本發(fā)明一個(gè)實(shí)施例提供的故障處理裝置的框圖。該故障處 理裝置可W包括;處理器310和至少一個(gè)硬件模塊320,其中,處理器310和至少一個(gè)硬件 模塊320電性相連。本實(shí)施例W至少一個(gè)硬件模塊320包括硬件模塊321和硬件模塊322 進(jìn)行說明。
[0102] 處理器310,用于統(tǒng)計(jì)服務(wù)器中的至少一個(gè)硬件模塊320在預(yù)定時(shí)間段內(nèi)產(chǎn)生可 糾正故障中斷的頻率,該可糾正故障中斷是由硬件模塊在發(fā)生可糾正故障時(shí)所產(chǎn)生的中 I小廣 斷;
[0103] 處理器310,用于檢測(cè)頻率是否大于禁能闊值;
[0104] 處理器310,用于當(dāng)檢測(cè)到頻率大于禁能闊值時(shí),將硬件模塊320的可糾正故障中 斷由使能狀態(tài)切換為禁能狀態(tài)。
[0105] 綜上所述,本實(shí)施例提供的故障處理裝置,通過統(tǒng)計(jì)服務(wù)器中的硬件模塊在預(yù)定 時(shí)間段內(nèi)產(chǎn)生可糾正故障中斷的頻率;檢測(cè)頻率是否大于禁能闊值;當(dāng)檢測(cè)到頻率大于禁 能闊值時(shí),將硬件模塊的可糾正故障中斷由使能狀態(tài)切換為禁能狀態(tài);解決了當(dāng)硬件模塊 在短時(shí)間內(nèi)發(fā)生大量可糾正故障時(shí),操作系統(tǒng)將處于持續(xù)的故障處理狀態(tài),占用了操作系 統(tǒng)大量的處理資源,甚至導(dǎo)致操作系統(tǒng)不能正常運(yùn)行的問題;達(dá)到了硬件模塊在短時(shí)間內(nèi) 發(fā)生大量可糾正故障時(shí),減少產(chǎn)生可糾正故障中斷,使操作系統(tǒng)能夠正常運(yùn)行,提高操作系 統(tǒng)的運(yùn)行效率的效果。
[0106] 在圖3A的基礎(chǔ)上,該故障處理裝置還可W包括;每個(gè)硬件模塊對(duì)應(yīng)的MCE存儲(chǔ)器 和可糾正故障中斷使能寄存器,W及存儲(chǔ)器,該存儲(chǔ)器用于存儲(chǔ)一個(gè)或一個(gè)W上的程序,包 括用于處理可糾正故障的中斷處理程序。本實(shí)施例W至少一個(gè)硬件模塊320包括硬件模塊 321和硬件模塊322進(jìn)行說明,如圖3B所示,該故障處理裝置300包括;處理器310、硬件模 塊321、硬件模塊322、與硬件模塊321對(duì)應(yīng)的MCE存儲(chǔ)器331、與硬件模塊321對(duì)應(yīng)的可糾 正故障中斷使能寄存器341、與硬件模塊322對(duì)應(yīng)的MCE存儲(chǔ)器332、與硬件模塊322對(duì)應(yīng) 的可糾正故障中斷使能寄存器342和存儲(chǔ)器350。其中,處理器310分別與至少一個(gè)硬件模 塊320、存儲(chǔ)器350、每個(gè)硬件模塊對(duì)應(yīng)的MCE存儲(chǔ)器和可糾正故障中斷使能寄存器電性相 連。
[0107] 處理器310,用于統(tǒng)計(jì)服務(wù)器中的至少一個(gè)硬件模塊320在預(yù)定時(shí)間段內(nèi)產(chǎn)生可 糾正故障中斷的頻率,該可糾正故障中斷是由硬件模塊在發(fā)生可糾正故障時(shí)所產(chǎn)生的中 I小廣 斷;
[010引處理器310,用于檢測(cè)頻率是否大于禁能闊值;
[0109] 處理器310,用于當(dāng)檢測(cè)到頻率大于禁能闊值時(shí),將硬件模塊320的可糾正故障中 斷由使能狀態(tài)切換為禁能狀態(tài)。
[0110] 具體的,在統(tǒng)計(jì)服務(wù)器中的硬件模塊在預(yù)定時(shí)間段內(nèi)產(chǎn)生可糾正故障中斷的頻率 時(shí),處理器310,用于通過中斷處理程序從MCE存儲(chǔ)器中讀取硬件模塊320在預(yù)定時(shí)間段內(nèi) 產(chǎn)生的可糾正故障中斷的個(gè)數(shù),該中斷處理程序是用于處理可糾正故障的中斷處理程序, 該MCE存儲(chǔ)器是與硬件模塊320對(duì)應(yīng)的MCE存儲(chǔ)器;
[0111] 處理器310,用于通過中斷處理程序根據(jù)預(yù)定時(shí)間段和可糾正故障中斷的個(gè)數(shù)統(tǒng) 計(jì)出頻率;
[0112] 處理器310,用于通過中斷處理程序檢測(cè)頻率是否大于禁能闊值。
[0113] 具體的,將硬件模塊的可糾正故障中斷由使能狀態(tài)切換為禁能狀態(tài)時(shí),處理器 310,用于在將硬件模塊320的可糾正故障中斷由使能狀態(tài)切換為禁能狀態(tài)時(shí),啟動(dòng)定時(shí) 器;
[0114] 處理器301,用于當(dāng)定時(shí)器計(jì)時(shí)至預(yù)定時(shí)長(zhǎng)時(shí),將硬件模塊320的可糾正故障中斷 由禁能狀態(tài)切換為使能狀態(tài)。
[0115] 具體的,在確定禁能闊值時(shí),處理器310用于獲取服務(wù)器中所處理的業(yè)務(wù)對(duì)實(shí)時(shí) 性要求的級(jí)別,該業(yè)務(wù)是基于服務(wù)器中的至少一個(gè)硬件模塊所運(yùn)行的任務(wù);根據(jù)級(jí)別在第 一關(guān)系表中查找對(duì)應(yīng)的禁能闊值,該第一關(guān)系表存儲(chǔ)有至少一個(gè)級(jí)別和與每個(gè)級(jí)別所對(duì)應(yīng) 的禁能闊值,該第一關(guān)系表中的至少一個(gè)級(jí)別中包括獲取到的級(jí)別;
[0116] 或,
[0117] 用于獲取服務(wù)器的業(yè)務(wù)處理能力等級(jí),該業(yè)務(wù)處理能力等級(jí)基于至少一個(gè)硬件模 塊確定;根據(jù)業(yè)務(wù)處理能力等級(jí)在第二關(guān)系表中查找對(duì)應(yīng)的禁能闊值,該第二關(guān)系表存儲(chǔ) 有至少一個(gè)業(yè)務(wù)處理能力等級(jí)和與每個(gè)業(yè)務(wù)處理能力等級(jí)所對(duì)應(yīng)的禁能闊值,該第二關(guān)系 表中的至少一個(gè)業(yè)務(wù)處理能力等級(jí)中包括獲取到的業(yè)務(wù)處理能力等級(jí)。
[0118] 具體的,在確定定時(shí)器預(yù)定時(shí)長(zhǎng)時(shí),處理器310,用于獲取服務(wù)器中所處理的業(yè)務(wù) 對(duì)實(shí)時(shí)性要求的級(jí)別,該業(yè)務(wù)是基于服務(wù)器中的至少一個(gè)硬件模塊所運(yùn)行的任務(wù);根據(jù)級(jí) 別在第H關(guān)系表中查找對(duì)應(yīng)的定時(shí)器預(yù)定時(shí)長(zhǎng),該第H關(guān)系表存儲(chǔ)有至少一個(gè)級(jí)別與每個(gè) 級(jí)別所對(duì)應(yīng)的定時(shí)器預(yù)定時(shí)長(zhǎng),該第H關(guān)系表中的至少一個(gè)級(jí)別中包括獲取到的級(jí)別;
[0119] 或,
[0120] 用于獲取服務(wù)器的業(yè)務(wù)處理能力等級(jí),該業(yè)務(wù)處理能力等級(jí)基于至少一個(gè)硬件模 塊確定;根據(jù)業(yè)務(wù)處理能力等級(jí)在第四關(guān)系表中查找對(duì)應(yīng)的定時(shí)器預(yù)定時(shí)長(zhǎng),該第四關(guān)系 表存儲(chǔ)有至少一個(gè)業(yè)務(wù)處理能力等級(jí)與每個(gè)業(yè)務(wù)處理能力等級(jí)所對(duì)應(yīng)的定時(shí)器預(yù)定時(shí)長(zhǎng), 該第四關(guān)系表中的至少一個(gè)業(yè)務(wù)處理能力等級(jí)中包括獲取到的業(yè)務(wù)處理能力等級(jí)。
[0121] 處理器310,用于將與硬件模塊320對(duì)應(yīng)的可糾正故障中斷使能寄存器中的標(biāo)識(shí) 值設(shè)置為禁能值;
[0122] 處理器301,用于將與硬件模塊320對(duì)應(yīng)的可糾正故障中斷使能寄存器中的標(biāo)識(shí) 值設(shè)置為使能值。
[0123] 綜上所述,本實(shí)施例提供的故障處理裝置,通過統(tǒng)計(jì)服務(wù)器中的硬件模塊在預(yù)定 時(shí)間段內(nèi)產(chǎn)生可糾正故障中斷的頻率;檢測(cè)頻率是否大于禁能闊值;當(dāng)檢測(cè)到頻率大于禁 能闊值時(shí),將硬件模塊的可糾正故障中斷由使能狀態(tài)切換為禁能狀態(tài);解決了當(dāng)硬件模塊 在短時(shí)間內(nèi)發(fā)生大量可糾正故障時(shí),操作系統(tǒng)將處于持續(xù)的故障處理狀態(tài),占用了操作系 統(tǒng)大量的處理資源,甚至導(dǎo)致操作系統(tǒng)不能正常運(yùn)行的問題;達(dá)到了硬件模塊在短時(shí)間內(nèi) 發(fā)生大量可糾正故障時(shí),減少產(chǎn)生可糾正故障中斷,使操作系統(tǒng)能夠正常運(yùn)行,提高操作系 統(tǒng)的運(yùn)行效率的效果。
[0124] 本實(shí)施例還通過在硬件模塊的可糾正故障中斷為禁能狀態(tài)時(shí)設(shè)置定時(shí)器,當(dāng)定時(shí) 器計(jì)時(shí)至預(yù)定時(shí)長(zhǎng)時(shí),將硬件模塊的可糾正故障中斷由禁能狀態(tài)切換為使能狀態(tài),且在硬 件模塊產(chǎn)生可糾正故障中斷的頻率是否小于使能闊值時(shí)保持該使能狀態(tài),達(dá)到了及時(shí)處理 可糾正故障風(fēng)暴結(jié)束后產(chǎn)生的可糾正故障中斷的效果。
[0125] 請(qǐng)參考圖4,其示出了本發(fā)明一個(gè)實(shí)施例提供的故障處理方法的方法流程圖,該方 法可用于至少一個(gè)硬件模塊的服務(wù)器中,該故障處理方法,包括:
[0126] 步驟402,統(tǒng)計(jì)服務(wù)器中的硬件模塊在預(yù)定時(shí)間段內(nèi)產(chǎn)生可糾正故障中斷的頻率, 該可糾正故障中斷是由硬件模塊在發(fā)生可糾正故障時(shí)所產(chǎn)生的中斷;
[0127] 可糾正故障中斷(英文;Corrected Machine-Qieck Error Interrupt ;簡(jiǎn)稱: CMCI)指硬件模塊在發(fā)生可糾正故障時(shí)產(chǎn)生的中斷,該中斷用于通知操作系統(tǒng)進(jìn)入中斷處 理程序?qū)υ摽杉m正故障進(jìn)行處理。
[012引步驟404,檢測(cè)該頻率是否大于禁能闊值;
[0129] 步驟406,當(dāng)檢測(cè)到該頻率大于禁能闊值時(shí),將硬件模塊的可糾正故障中斷由使能 狀態(tài)切換為禁能狀態(tài)。
[0130] 綜上所述,本實(shí)施例提供的故障處理方法,通過統(tǒng)計(jì)服務(wù)器中的硬件模塊在預(yù)定 時(shí)間段內(nèi)產(chǎn)生可糾正故障中斷的頻率;檢測(cè)頻率是否大于禁能闊值;當(dāng)檢測(cè)到頻率大于禁 能闊值時(shí),將硬件模塊的可糾正故障中斷由使能狀態(tài)切換為禁能狀態(tài);解決了當(dāng)硬件模塊 在短時(shí)間內(nèi)發(fā)生大量可糾正故障時(shí),操作系統(tǒng)將處于持續(xù)的故障處理狀態(tài),占用了操作系 統(tǒng)大量的處理資源,甚至導(dǎo)致操作系統(tǒng)不能正常運(yùn)行的問題;達(dá)到了硬件模塊在短時(shí)間內(nèi) 發(fā)生大量可糾正故障時(shí),減少產(chǎn)生可糾正故障中斷,使操作系統(tǒng)能夠正常運(yùn)行,提高操作系 統(tǒng)的運(yùn)行效率的效果。
[0131] 請(qǐng)參考圖5A,其示出了本發(fā)明另一個(gè)實(shí)施例提供的故障處理方法的方法流程圖, 該方法可用于至少一個(gè)硬件模塊的服務(wù)器中,該故障處理方法,包括:
[0132] 步驟501,統(tǒng)計(jì)服務(wù)器中的硬件模塊在預(yù)定時(shí)間段內(nèi)產(chǎn)生可糾正故障中斷的頻率, 該可糾正故障中斷是由硬件模塊在發(fā)生可糾正故障時(shí)所產(chǎn)生的中斷。
[0133] 該服務(wù)器可W是采用X86架構(gòu)的設(shè)備,由于現(xiàn)有的服務(wù)器大多是采用X86架構(gòu),所 W本實(shí)施例W該服務(wù)器為X86架構(gòu)設(shè)備進(jìn)行說明,并不對(duì)本發(fā)明構(gòu)成限定。
[0134] 硬件模塊是指X86架構(gòu)設(shè)備中具有不同處理功能的硬件處理設(shè)備,X86架構(gòu)設(shè)備 中包含至少一個(gè)硬件模塊。在X86架構(gòu)設(shè)備中,各個(gè)硬件模塊各自對(duì)應(yīng)自己的MCE存儲(chǔ)器, 該些MCE存儲(chǔ)器用于存儲(chǔ)硬件模塊產(chǎn)生的可糾正故障中斷。中斷處理程序可W通過從硬件 模塊對(duì)應(yīng)的MCE存儲(chǔ)器中獲取預(yù)定時(shí)間段內(nèi)產(chǎn)生的可糾正故障中斷的個(gè)數(shù),計(jì)算得到相應(yīng) 的產(chǎn)生可糾正故障中斷的頻率,本步驟可W包括如下子步驟:
[01巧]一、X86架構(gòu)設(shè)備通過中斷處理程序從MCE存儲(chǔ)器中讀取硬件模塊在預(yù)定時(shí)間段 內(nèi)產(chǎn)生的可糾正故障中斷的個(gè)數(shù),該中斷處理程序是用于處理可糾正故障的中斷處理程 序,該MCE存儲(chǔ)器是硬件模塊對(duì)應(yīng)的MCE存儲(chǔ)器。
[0136] 當(dāng)硬件模塊發(fā)生可糾正故障時(shí),硬件模塊會(huì)根據(jù)該可糾正故障產(chǎn)生可糾正故障中 斷,并通知操作系統(tǒng)進(jìn)入中斷處理程序?qū)υ摽杉m正故障中斷進(jìn)行處理,中斷處理程序根據(jù) 可糾正故障中斷確定發(fā)生故障的硬件模塊,并從該硬件模塊對(duì)應(yīng)的MCE存儲(chǔ)器中讀取該硬 件模塊在預(yù)定時(shí)間段內(nèi)產(chǎn)生的可糾正故障中斷的個(gè)數(shù),該預(yù)定時(shí)間段是操作系統(tǒng)預(yù)先設(shè)定 的,可W為5砂。
[0137] 比如,中斷處理程序接收到可糾正故障中斷通知,確定該可糾正故障的硬件模塊 為硬件模塊A,從該硬件模塊A對(duì)應(yīng)的MCE存儲(chǔ)器A中讀取到最近5砂內(nèi)產(chǎn)生的可糾正故障 中斷的個(gè)數(shù)為10個(gè)。
[013引二、X86架構(gòu)設(shè)備通過中斷處理程序根據(jù)預(yù)定時(shí)間段和可糾正故障中斷的個(gè)數(shù)統(tǒng) 計(jì)出頻率。
[0139] 中斷處理程序根據(jù)讀取到的預(yù)定時(shí)間段內(nèi)產(chǎn)生的可糾正故障中斷的個(gè)數(shù)和預(yù)定 時(shí)間段,計(jì)算得到該硬件模塊在預(yù)定時(shí)間段內(nèi)產(chǎn)生可糾正故障中斷的頻率。
[0140] 比如,中斷處理程序讀取到的預(yù)定時(shí)間段內(nèi)產(chǎn)生的可糾正故障中斷的個(gè)數(shù)為10 個(gè),且該預(yù)定時(shí)間段位5砂,計(jì)算得到該硬件模塊在預(yù)定時(shí)間段內(nèi)產(chǎn)生可糾正故障中斷的 頻率為10次/5砂。
[0141] 需要說明的是,由于X86架構(gòu)設(shè)備在運(yùn)行時(shí),多個(gè)硬件模塊會(huì)同時(shí)發(fā)生可糾正故 障,所W中斷處理程序需要分別統(tǒng)計(jì)不同的硬件模塊產(chǎn)生可糾正故障中斷的頻率,本實(shí)施 例僅W中斷處理程序統(tǒng)計(jì)一個(gè)硬件模塊產(chǎn)生可糾正故障中斷的頻率進(jìn)行說明,并不對(duì)發(fā)明 構(gòu)成限定。
[0142] 步驟502,檢測(cè)該頻率是否大于禁能闊值。
[0143] X86架構(gòu)設(shè)備通過中斷處理程序檢測(cè)硬件模塊在預(yù)定時(shí)間段內(nèi)產(chǎn)生可糾正故障中 斷的頻率是否大于禁能闊值,當(dāng)該頻率大于禁能闊值時(shí),即可確定該硬件模塊發(fā)生了可糾 正故障風(fēng)暴;當(dāng)該頻率小于禁能闊值時(shí),即可確定該硬件模塊未發(fā)生可糾正故障風(fēng)暴。
[0144] 該禁能闊值可W預(yù)先進(jìn)行設(shè)置,也可W根據(jù)X86架構(gòu)設(shè)備中所處理的業(yè)務(wù)對(duì)實(shí)時(shí) 性的要求或根據(jù)X86架構(gòu)設(shè)備的業(yè)務(wù)處理能力進(jìn)行實(shí)時(shí)設(shè)置,設(shè)置該禁能闊值可W包括下 面兩種可能的實(shí)現(xiàn)方式:
[0145] 第一種可能的實(shí)現(xiàn)方式,X86架構(gòu)設(shè)備獲取該X86架構(gòu)設(shè)備中所處理的業(yè)務(wù)對(duì)實(shí) 時(shí)性要求的級(jí)別,該業(yè)務(wù)是基于X86架構(gòu)設(shè)備中的至少一個(gè)硬件模塊所運(yùn)行的任務(wù);根據(jù) 該級(jí)別在第一關(guān)系表中查找對(duì)應(yīng)的禁能闊值,該第一關(guān)系表存儲(chǔ)有至少一個(gè)級(jí)別和與每個(gè) 級(jí)別所對(duì)應(yīng)的禁能闊值,該第一關(guān)系表中的至少一個(gè)級(jí)別中包括獲取到的級(jí)別。
[0146] 當(dāng)X86架構(gòu)設(shè)備處理的業(yè)務(wù)對(duì)實(shí)時(shí)性要求高時(shí),由于操作系統(tǒng)頻繁地進(jìn)入中斷處 理程序?qū)杉m正故障中斷進(jìn)行處理會(huì)導(dǎo)致業(yè)務(wù)得不到及時(shí)處理,所W可W設(shè)置一個(gè)較小的 禁能闊值,使得操作系統(tǒng)能夠及時(shí)處理當(dāng)前業(yè)務(wù);當(dāng)X86架構(gòu)設(shè)備處理的業(yè)務(wù)對(duì)實(shí)時(shí)性要 求低時(shí),該禁能闊值可W被設(shè)置的較大。
[0147] 操作系統(tǒng)中的第一關(guān)系表中預(yù)先存儲(chǔ)有業(yè)務(wù)對(duì)實(shí)時(shí)性要求的各個(gè)級(jí)別與對(duì)應(yīng)禁 能闊值的對(duì)應(yīng)關(guān)系,其中,各個(gè)級(jí)別與對(duì)應(yīng)禁能闊值呈負(fù)相關(guān)關(guān)系,即業(yè)務(wù)對(duì)實(shí)時(shí)性要求的 級(jí)別越高時(shí),對(duì)應(yīng)的禁能闊值也越小,業(yè)務(wù)對(duì)實(shí)時(shí)性要求的級(jí)別越低時(shí),對(duì)應(yīng)的禁能闊值也 越大。該第一關(guān)系表的表結(jié)構(gòu)可W示例性地如表一所示:
[014引 表一
[0149]
【權(quán)利要求】
1. 一種故障處理裝置,其特征在于,用于包括至少一個(gè)硬件模塊的服務(wù)器中,所述裝置 包括: 統(tǒng)計(jì)模塊,用于統(tǒng)計(jì)所述服務(wù)器中的硬件模塊在預(yù)定時(shí)間段內(nèi)產(chǎn)生可糾正故障中斷的 頻率,所述可糾正故障中斷是由所述硬件模塊在發(fā)生可糾正故障時(shí)所產(chǎn)生的中斷; 檢測(cè)模塊,用于檢測(cè)所述頻率是否大于禁能閾值; 第一切換模塊,用于當(dāng)檢測(cè)到所述頻率大于所述禁能閾值時(shí),將所述硬件模塊的可糾 正故障中斷由使能狀態(tài)切換為禁能狀態(tài)。
2. 根據(jù)權(quán)利要求1所述的裝置,其特征在于,所述統(tǒng)計(jì)模塊,包括: 讀取模塊,用于通過中斷處理程序從機(jī)器校驗(yàn)異常MCE存儲(chǔ)器中讀取所述硬件模塊在 預(yù)定時(shí)間段內(nèi)產(chǎn)生的可糾正故障中斷的個(gè)數(shù),所述中斷處理程序是用于處理所述可糾正故 障的中斷處理程序,所述MCE存儲(chǔ)器是與所述硬件模塊對(duì)應(yīng)的MCE存儲(chǔ)器; 計(jì)算模塊,用于通過所述中斷處理程序根據(jù)所述預(yù)定時(shí)間段和所述可糾正故障中斷的 個(gè)數(shù)統(tǒng)計(jì)出所述頻率; 所述檢測(cè)模塊,用于通過所述中斷處理程序檢測(cè)所述頻率是否大于禁能閾值。
3. 根據(jù)權(quán)利要求1所述的裝置,其特征在于,所述裝置,還包括: 啟動(dòng)模塊,用于在將所述硬件模塊的可糾正故障中斷由所述使能狀態(tài)切換為所述禁能 狀態(tài)時(shí),啟動(dòng)定時(shí)器; 第二切換模塊,用于當(dāng)所述定時(shí)器計(jì)時(shí)至預(yù)定時(shí)長(zhǎng)時(shí),將所述硬件模塊的可糾正故障 中斷由所述禁能狀態(tài)切換為所述使能狀態(tài)。
4. 根據(jù)權(quán)利要求1所述的裝置,其特征在于,所述裝置,還包括: 第一查找模塊,用于獲取所述服務(wù)器中所處理的業(yè)務(wù)對(duì)實(shí)時(shí)性要求的級(jí)別,所述業(yè)務(wù) 是基于所述服務(wù)器中的至少一個(gè)硬件模塊所運(yùn)行的任務(wù);根據(jù)所述級(jí)別在第一關(guān)系表中查 找對(duì)應(yīng)的禁能閾值,所述第一關(guān)系表存儲(chǔ)有至少一個(gè)級(jí)別和與每個(gè)所述級(jí)別所對(duì)應(yīng)的禁能 閾值,所述第一關(guān)系表中的至少一個(gè)級(jí)別中包括獲取到的所述級(jí)別; 或, 第二查找模塊,用于獲取所述服務(wù)器的業(yè)務(wù)處理能力等級(jí),所述業(yè)務(wù)處理能力等級(jí)基 于所述至少一個(gè)硬件模塊確定;根據(jù)所述業(yè)務(wù)處理能力等級(jí)在第二關(guān)系表中查找對(duì)應(yīng)的禁 能閾值,所述第二關(guān)系表存儲(chǔ)有至少一個(gè)業(yè)務(wù)處理能力等級(jí)和與每個(gè)所述業(yè)務(wù)處理能力等 級(jí)所對(duì)應(yīng)的禁能閾值,所述第二關(guān)系表中的至少一個(gè)業(yè)務(wù)處理能力等級(jí)中包括獲取到的所 述業(yè)務(wù)處理能力等級(jí)。
5. 根據(jù)權(quán)利要求3所述的裝置,其特征在于,所述裝置,還包括: 第三查找模塊,用于獲取所述服務(wù)器中所處理的業(yè)務(wù)對(duì)實(shí)時(shí)性要求的級(jí)別,所述業(yè)務(wù) 是基于所述服務(wù)器中的至少一個(gè)硬件模塊所運(yùn)行的任務(wù);根據(jù)所述級(jí)別在第三關(guān)系表中查 找對(duì)應(yīng)的定時(shí)器預(yù)定時(shí)長(zhǎng),所述第三關(guān)系表存儲(chǔ)有至少一個(gè)級(jí)別與每個(gè)所述級(jí)別所對(duì)應(yīng)的 定時(shí)器預(yù)定時(shí)長(zhǎng),所述第三關(guān)系表中的至少一個(gè)級(jí)別中包括獲取到的所述級(jí)別; 或, 第四查找模塊,用于獲取所述服務(wù)器的業(yè)務(wù)處理能力等級(jí),所述業(yè)務(wù)處理能力等級(jí)基 于所述至少一個(gè)硬件模塊確定;根據(jù)所述業(yè)務(wù)處理能力等級(jí)在第四關(guān)系表中查找對(duì)應(yīng)的定 時(shí)器預(yù)定時(shí)長(zhǎng),所述第四關(guān)系表存儲(chǔ)有至少一個(gè)業(yè)務(wù)處理能力等級(jí)與每個(gè)所述業(yè)務(wù)處理能 力等級(jí)所對(duì)應(yīng)的定時(shí)器預(yù)定時(shí)長(zhǎng),所述第四關(guān)系表中的至少一個(gè)業(yè)務(wù)處理能力等級(jí)中包括 獲取到的所述業(yè)務(wù)處理能力等級(jí)。
6. 根據(jù)權(quán)利要求3所述的裝置,其特征在于,所述第一切換模塊,用于將與所述硬件模 塊對(duì)應(yīng)的可糾正故障中斷使能寄存器中的標(biāo)識(shí)值設(shè)置為禁能值; 所述第二切換模塊,用于將與所述硬件模塊對(duì)應(yīng)的可糾正故障中斷使能寄存器中的標(biāo) 識(shí)值設(shè)置為使能值。
7. -種故障處理方法,其特征在于,用于包括至少一個(gè)硬件模塊的服務(wù)器中,所述方法 包括: 統(tǒng)計(jì)所述服務(wù)器中的硬件模塊在預(yù)定時(shí)間段內(nèi)產(chǎn)生可糾正故障中斷的頻率,所述可糾 正故障中斷是由所述硬件模塊在發(fā)生可糾正故障時(shí)所產(chǎn)生的中斷; 檢測(cè)所述頻率是否大于禁能閾值; 當(dāng)檢測(cè)到所述頻率大于所述禁能閾值時(shí),將所述硬件模塊的可糾正故障中斷由使能狀 態(tài)切換為禁能狀態(tài)。
8. 根據(jù)權(quán)利要求7所述的方法,其特征在于,所述統(tǒng)計(jì)所述服務(wù)器中的硬件模塊在預(yù) 定時(shí)間段內(nèi)產(chǎn)生可糾正故障中斷的頻率,包括: 通過中斷處理程序從機(jī)器校驗(yàn)異常MCE存儲(chǔ)器中讀取所述硬件模塊在預(yù)定時(shí)間段內(nèi) 產(chǎn)生的可糾正故障中斷的個(gè)數(shù),所述中斷處理程序是用于處理所述可糾正故障的中斷處理 程序,所述MCE存儲(chǔ)器是與所述硬件模塊對(duì)應(yīng)的MCE存儲(chǔ)器; 通過所述中斷處理程序根據(jù)所述預(yù)定時(shí)間段和所述可糾正故障中斷的個(gè)數(shù)統(tǒng)計(jì)出所 述頻率; 所述檢測(cè)所述頻率是否大于禁能閾值,包括: 通過所述中斷處理程序檢測(cè)所述頻率是否大于禁能閾值。
9. 根據(jù)權(quán)利要求7所述的方法,其特征在于,所述方法,還包括: 在將所述硬件模塊的可糾正故障中斷由所述使能狀態(tài)切換為所述禁能狀態(tài)時(shí),啟動(dòng)定 時(shí)器; 當(dāng)所述定時(shí)器計(jì)時(shí)至預(yù)定時(shí)長(zhǎng)時(shí),將所述硬件模塊的可糾正故障中斷由所述禁能狀態(tài) 切換為所述使能狀態(tài)。
10. 根據(jù)權(quán)利要求7所述的方法,其特征在于,所述檢測(cè)所述頻率是否大于禁能閾值之 前,還包括: 獲取所述服務(wù)器中所處理的業(yè)務(wù)對(duì)實(shí)時(shí)性要求的級(jí)別,所述業(yè)務(wù)是基于所述服務(wù)器中 的至少一個(gè)硬件模塊所運(yùn)行的任務(wù);根據(jù)所述級(jí)別在第一關(guān)系表中查找對(duì)應(yīng)的禁能閾值, 所述第一關(guān)系表存儲(chǔ)有至少一個(gè)級(jí)別和與每個(gè)所述級(jí)別所對(duì)應(yīng)的禁能閾值,所述第一關(guān)系 表中的至少一個(gè)級(jí)別中包括獲取到的所述級(jí)別; 或, 獲取所述服務(wù)器的業(yè)務(wù)處理能力等級(jí),所述業(yè)務(wù)處理能力等級(jí)基于所述至少一個(gè)硬件 模塊確定;根據(jù)所述業(yè)務(wù)處理能力等級(jí)在第二關(guān)系表中查找對(duì)應(yīng)的禁能閾值,所述第二關(guān) 系表存儲(chǔ)有至少一個(gè)業(yè)務(wù)處理能力等級(jí)和與每個(gè)所述業(yè)務(wù)處理能力等級(jí)所對(duì)應(yīng)的禁能閾 值,所述第二關(guān)系表中的至少一個(gè)業(yè)務(wù)處理能力等級(jí)中包括獲取到的所述業(yè)務(wù)處理能力等 級(jí)。
11. 根據(jù)權(quán)利要求9所述的方法,其特征在于,所述在將所述硬件模塊的可糾正故障中 斷由所述使能狀態(tài)切換為所述禁能狀態(tài)時(shí),啟動(dòng)定時(shí)器之前,還包括: 獲取所述服務(wù)器中所處理的業(yè)務(wù)對(duì)實(shí)時(shí)性要求的級(jí)別,所述業(yè)務(wù)是基于所述服務(wù)器中 的至少一個(gè)硬件模塊所運(yùn)行的任務(wù);根據(jù)所述級(jí)別在第三關(guān)系表中查找對(duì)應(yīng)的定時(shí)器預(yù)定 時(shí)長(zhǎng),所述第三關(guān)系表存儲(chǔ)有至少一個(gè)級(jí)別與每個(gè)所述級(jí)別所對(duì)應(yīng)的定時(shí)器預(yù)定時(shí)長(zhǎng),所 述第三關(guān)系表中的至少一個(gè)級(jí)別中包括獲取到的所述級(jí)別; 或, 獲取所述服務(wù)器的業(yè)務(wù)處理能力等級(jí),所述業(yè)務(wù)處理能力等級(jí)基于所述至少一個(gè)硬件 模塊確定;根據(jù)所述業(yè)務(wù)處理能力等級(jí)在第四關(guān)系表中查找對(duì)應(yīng)的定時(shí)器預(yù)定時(shí)長(zhǎng),所述 第四關(guān)系表存儲(chǔ)有至少一個(gè)業(yè)務(wù)處理能力等級(jí)與每個(gè)所述業(yè)務(wù)處理能力等級(jí)所對(duì)應(yīng)的定 時(shí)器預(yù)定時(shí)長(zhǎng),所述第四關(guān)系表中的至少一個(gè)業(yè)務(wù)處理能力等級(jí)中包括獲取到的所述業(yè)務(wù) 處理能力等級(jí)。
12. 根據(jù)權(quán)利要求9所述的方法,其特征在于,所述將所述硬件模塊的可糾正故障中斷 由使能狀態(tài)切換為禁能狀態(tài),包括: 將與所述硬件模塊對(duì)應(yīng)的可糾正故障中斷使能寄存器中的標(biāo)識(shí)值設(shè)置為禁能值; 所述將所述硬件模塊的可糾正故障中斷由所述禁能狀態(tài)切換為所述使能狀態(tài),包括: 將與所述硬件模塊對(duì)應(yīng)的可糾正故障中斷使能寄存器中的標(biāo)識(shí)值設(shè)置為使能值。
【文檔編號(hào)】H04L12/24GK104486100SQ201410712709
【公開日】2015年4月1日 申請(qǐng)日期:2014年11月28日 優(yōu)先權(quán)日:2014年11月28日
【發(fā)明者】宋剛 申請(qǐng)人:華為技術(shù)有限公司