亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

處理器預(yù)測(cè)故障分析方法及裝置與流程

文檔序號(hào):12665058閱讀:252來源:國知局
處理器預(yù)測(cè)故障分析方法及裝置與流程

本發(fā)明涉及處理器測(cè)試技術(shù)領(lǐng)域,特別涉及一種處理器預(yù)測(cè)故障分析方法及裝置。



背景技術(shù):

機(jī)器校驗(yàn)架構(gòu)(MCA,Machine Check Architecture)是因特爾公司提出一種中央處理器(CPU)將硬件錯(cuò)誤報(bào)告給操作系統(tǒng)(Operating System,OS)的服務(wù)器錯(cuò)誤自檢機(jī)制。目前主流的因特爾處理器都支持MCA機(jī)制。MCA機(jī)制主要是偵測(cè)并報(bào)告硬件錯(cuò)誤,如系統(tǒng)總線(System Bus)錯(cuò)誤,內(nèi)存錯(cuò)誤檢查和糾正(ECC)錯(cuò)誤,奇偶校驗(yàn)錯(cuò)誤,緩存(cache)錯(cuò)誤等。MCA機(jī)制在處理器內(nèi)部主要通過一系列特殊模塊寄存器(MSR,Model Specific Registers)實(shí)現(xiàn)。

在服務(wù)器系統(tǒng)運(yùn)行穩(wěn)定性測(cè)試時(shí),處理器和內(nèi)存出錯(cuò)的機(jī)會(huì)更大,會(huì)產(chǎn)生用于描述MCA機(jī)制偵測(cè)并報(bào)告硬件錯(cuò)誤的MCA錯(cuò)誤信息。MCA錯(cuò)誤信息主要包括核心錯(cuò)誤(CPU CORE)和非核心錯(cuò)誤(CPU UNCORE)。這樣如果CPU出現(xiàn)MCA機(jī)制中包含的錯(cuò)誤,用戶可以發(fā)現(xiàn)并針對(duì)這些錯(cuò)誤進(jìn)行解決,以避免這些錯(cuò)誤不能得到及時(shí)解決從而導(dǎo)致系統(tǒng)宕機(jī)或重啟,對(duì)客戶造成重要數(shù)據(jù)丟失的無法挽回的后果。



技術(shù)實(shí)現(xiàn)要素:

有鑒于此,本發(fā)明實(shí)施例的目的是提供一種解決MCA機(jī)制中包含的錯(cuò)誤的處理器預(yù)測(cè)故障分析方法及裝置。

為了實(shí)現(xiàn)上述目的,本發(fā)明實(shí)施例提供了一種處理器預(yù)測(cè)故障分析方法,包括:

接收硬件系統(tǒng)發(fā)送的機(jī)器錯(cuò)誤信息;

若所述機(jī)器錯(cuò)誤信息為可修正錯(cuò)誤信息,則獲取所述可修正錯(cuò)誤信息對(duì)應(yīng)的邏輯核心編號(hào);

將所述邏輯核心編號(hào)對(duì)應(yīng)的核心由調(diào)度列表中移除;

將所述核心設(shè)置為邏輯空閑狀態(tài)。

本發(fā)明實(shí)施例還提供一種處理器預(yù)測(cè)故障分析裝置,包括:

接收模塊,配置為接收硬件系統(tǒng)發(fā)送的機(jī)器錯(cuò)誤信息;

獲取模塊,配置為當(dāng)所述機(jī)器錯(cuò)誤信息為可修正錯(cuò)誤信息時(shí),、獲取所述可修正錯(cuò)誤信息對(duì)應(yīng)的邏輯核心編號(hào);

移除模塊,配置為將所述邏輯核心編號(hào)對(duì)應(yīng)的核心由調(diào)度列表中移除;

設(shè)置模塊,配置為將所述核心設(shè)置為邏輯空閑狀態(tài)。

由以上本發(fā)明實(shí)施例可以實(shí)現(xiàn)通過讀取MCA錯(cuò)誤信息,當(dāng)MCA錯(cuò)誤信息為可修正錯(cuò)誤信息時(shí),將所述邏輯核心編號(hào)對(duì)應(yīng)的核心由調(diào)度列表中移除,并將所述核心設(shè)置于邏輯空閑狀態(tài),以避免可能出現(xiàn)的致命錯(cuò)誤。

附圖說明

圖1為本發(fā)明的處理器預(yù)測(cè)故障分析方法的一種實(shí)施例的流程圖;

圖2為本發(fā)明的處理器預(yù)測(cè)故障分析方法的另一種實(shí)施例的流程圖;

圖3為本發(fā)明的處理器預(yù)測(cè)故障分析方法的在另一種實(shí)施例基礎(chǔ)上的其中一種實(shí)施例的處理過程示意圖;

圖4為本發(fā)明的處理器預(yù)測(cè)故障分析裝置的一種實(shí)施例的示意圖;

圖5為本發(fā)明的處理器預(yù)測(cè)故障分析裝置的另一種實(shí)施例的示意圖。

具體實(shí)施方式

此處參考附圖描述本公開的各種方案以及特征。

應(yīng)理解的是,可以對(duì)此處公開的實(shí)施例做出各種修改。因此,上述說明書不應(yīng)該視為限制,而僅是作為實(shí)施例的范例。本領(lǐng)域的技術(shù)人員將想到在本公開的范圍和精神內(nèi)的其他修改。

包含在說明書中并構(gòu)成說明書的一部分的附圖示出了本公開的實(shí)施例,并且與上面給出的對(duì)本公開的大致描述以及下面給出的對(duì)實(shí)施例的詳細(xì)描述一起用于解釋本公開的原理。

通過下面參照附圖對(duì)給定為非限制性實(shí)例的實(shí)施例的優(yōu)選形式的描述,本發(fā)明的這些和其它特性將會(huì)變得顯而易見。

還應(yīng)當(dāng)理解,盡管已經(jīng)參照一些具體實(shí)例對(duì)本發(fā)明進(jìn)行了描述,但本領(lǐng)域技術(shù)人員能夠確定地實(shí)現(xiàn)本發(fā)明的很多其它等效形式,它們具有如權(quán)利要求所述的特征并因此都位于借此所限定的保護(hù)范圍內(nèi)。

當(dāng)結(jié)合附圖時(shí),鑒于以下詳細(xì)說明,本公開的上述和其他方面、特征和優(yōu)勢(shì)將變得更為顯而易見。

此后參照附圖描述本公開的具體實(shí)施例;然而,應(yīng)當(dāng)理解,所公開的實(shí)施例僅僅是本公開的實(shí)例,其可采用多種方式實(shí)施。熟知和/或重復(fù)的功能和結(jié)構(gòu)并未詳細(xì)描述以避免不必要或多余的細(xì)節(jié)使得本公開模糊不清。因此,本文所公開的具體的結(jié)構(gòu)性和功能性細(xì)節(jié)并非意在限定,而是僅僅作為權(quán)利要求的基礎(chǔ)和代表性基礎(chǔ)用于教導(dǎo)本領(lǐng)域技術(shù)人員以實(shí)質(zhì)上任意合適的詳細(xì)結(jié)構(gòu)多樣地使用本公開。

本說明書可使用詞組“在一種實(shí)施例中”、“在另一種實(shí)施例中”或“在其中一個(gè)實(shí)施例中”,其均可指代根據(jù)本公開的相同或不同實(shí)施例中的一個(gè)或多個(gè)。

目前某些計(jì)算機(jī)芯片生產(chǎn)廠家生產(chǎn)的芯片具有機(jī)器校驗(yàn)架構(gòu)(Machine Check Architecture,MAC)機(jī)制,來對(duì)服務(wù)器進(jìn)行自檢,并在發(fā)現(xiàn)硬件錯(cuò)誤時(shí)發(fā)出中斷或異常。系統(tǒng)軟件收到中斷或異常后,會(huì)對(duì)其進(jìn)行響應(yīng),進(jìn)行相應(yīng)的修復(fù)、告警或其他策略等動(dòng)作。通過廠家的遠(yuǎn)程訪問服務(wù)(Remote Access Service,RAS)功能,保證在發(fā)生崩潰(crash)之前,服務(wù)器可以有機(jī)會(huì)做一些容錯(cuò),以提高服務(wù)器的可靠性。

圖1為本發(fā)明的處理器預(yù)測(cè)故障分析方法的一種實(shí)施例的流程圖,如圖1所示,本實(shí)施例的處理器預(yù)測(cè)故障分析方法,具體可以包括如下步驟:

接收硬件系統(tǒng)發(fā)送的機(jī)器錯(cuò)誤信息。

具體地,本實(shí)施例的執(zhí)行主體為操作系統(tǒng)。根據(jù)機(jī)器校驗(yàn)架構(gòu)的設(shè)計(jì),如果發(fā)生硬件固障,則固件(Firmware)會(huì)先于操作系統(tǒng)獲取到機(jī)器錯(cuò)誤信息,即機(jī)器校驗(yàn)錯(cuò)誤(Machine Check Error,MCE)信息。并且,固件將所獲取到的機(jī)器錯(cuò)誤信息發(fā)送至操作系統(tǒng),以便于操作系統(tǒng)進(jìn)行處理。

判斷機(jī)器錯(cuò)誤信息是否為可修正錯(cuò)誤信息,以便于根據(jù)機(jī)器錯(cuò)誤信息的類型進(jìn)行不同的處理。

若所述機(jī)器錯(cuò)誤信息為可修正錯(cuò)誤信息,則獲取所述可修正錯(cuò)誤信息對(duì)應(yīng)的邏輯核心編號(hào)。

具體地,機(jī)器錯(cuò)誤信息分為可修正(corrected)錯(cuò)誤信息和不可修正(uncorrected)錯(cuò)誤信息,固件判斷機(jī)器錯(cuò)誤信息是否為可修正錯(cuò)誤信息,如果是可修正錯(cuò)誤信息,則需要知道發(fā)生可修正錯(cuò)誤信息的核心,具體是通過該核心對(duì)應(yīng)的邏輯核心編號(hào)(ACPI ID)獲得核心的信息,以便于操作系統(tǒng)進(jìn)行后續(xù)處理。

本領(lǐng)域技術(shù)人員應(yīng)該可以知道,若所述機(jī)器錯(cuò)誤信息為不可修正錯(cuò)誤信息,則根據(jù)不可修正錯(cuò)誤信息的類型,由機(jī)器自動(dòng)進(jìn)行處理,無需將該不可修正的機(jī)器錯(cuò)誤信息傳送至操作系統(tǒng)。例如,不可修正錯(cuò)誤信息分為可恢復(fù)、致命(fatal)和災(zāi)難(catastrophic)三種類型,對(duì)于致命和災(zāi)難類型的錯(cuò)誤信息,不可修正錯(cuò)誤信息要么已經(jīng)導(dǎo)致機(jī)器無法正常啟動(dòng),要么是操作系統(tǒng)無法解決的錯(cuò)誤,因此無需將此錯(cuò)誤信息發(fā)送至操作系統(tǒng),對(duì)于可恢復(fù)的錯(cuò)誤信息,則可以進(jìn)行以下操作:無需采取措施、提供可恢復(fù)操作選項(xiàng)進(jìn)行恢復(fù),以及可恢復(fù)必要操作等進(jìn)行自動(dòng)恢復(fù)。

將所述邏輯核心編號(hào)對(duì)應(yīng)的核心由調(diào)度列表中移除。

具體地,由于可修正錯(cuò)誤信息發(fā)生在邏輯核心編號(hào)對(duì)應(yīng)的核心,因此,可以將該核心由調(diào)度列表中移除,使其不再執(zhí)行進(jìn)程或中斷,以避免進(jìn)一步的致命錯(cuò)誤的發(fā)生。

將所述核心設(shè)置為邏輯空閑狀態(tài)。

具體地,由于所述邏輯核心編號(hào)對(duì)應(yīng)的核心出現(xiàn)錯(cuò)誤,為了避免更嚴(yán)重的錯(cuò)誤發(fā)生,則將該核心設(shè)置為邏輯空閑狀態(tài),使其不再執(zhí)行新的進(jìn)程或中斷,以避免出現(xiàn)更嚴(yán)重的錯(cuò)誤。

本發(fā)明實(shí)施例的技術(shù)方案通過讀取MCA錯(cuò)誤信息,當(dāng)MCA錯(cuò)誤信息為可修正錯(cuò)誤信息時(shí),將所述邏輯核心編號(hào)對(duì)應(yīng)的核心由調(diào)度列表中移除,并將所述核心設(shè)置于邏輯空閑狀態(tài),以避免可能出現(xiàn)的致命錯(cuò)誤。

圖2為本發(fā)明的處理器預(yù)測(cè)故障分析方法的另一種實(shí)施例的流程圖,本實(shí)施例的處理器預(yù)測(cè)故障分析方法在如圖1所示的實(shí)施例的基礎(chǔ)上,進(jìn)一步更加詳細(xì)地介紹本發(fā)明的技術(shù)方案。如圖2所示,本實(shí)施例的處理器預(yù)測(cè)故障分析方法,具體可以包括如下步驟:

接收硬件系統(tǒng)發(fā)送的機(jī)器錯(cuò)誤信息。

具體地,本實(shí)施例的執(zhí)行主體為操作系統(tǒng)。根據(jù)機(jī)器校驗(yàn)架構(gòu)的設(shè)計(jì),如果發(fā)生硬件固障,則固件(Firmware)會(huì)先于操作系統(tǒng)獲取到機(jī)器錯(cuò)誤信息,即機(jī)器校驗(yàn)錯(cuò)誤(Machine Check Error,MCE)信息。并且,固件將所獲取到的機(jī)器錯(cuò)誤信息發(fā)送至操作系統(tǒng),以便于操作系統(tǒng)進(jìn)行處理。

判斷機(jī)器錯(cuò)誤信息是否為可修正錯(cuò)誤信息,以便于根據(jù)機(jī)器錯(cuò)誤信息的類型進(jìn)行不同的處理。

若所述機(jī)器錯(cuò)誤信息為可修正錯(cuò)誤信息,則觸發(fā)高級(jí)配置和電源管理接口事件,以通過高級(jí)配置和電源管理接口對(duì)象獲取所述可修正錯(cuò)誤信息對(duì)應(yīng)的邏輯核心編號(hào)。

具體地,機(jī)器錯(cuò)誤信息分為可修正(corrected)錯(cuò)誤信息和不可修正(uncorrected)錯(cuò)誤信息,固件判斷機(jī)器錯(cuò)誤信息是否為可修正錯(cuò)誤信息,如果是可修正錯(cuò)誤信息,則觸發(fā)高級(jí)配置和電源管理接口(Advanced Configuration and Power Management Interface,ACPI)事件,以獲得可修正錯(cuò)誤信息對(duì)應(yīng)的邏輯核心編號(hào)(ACPI ID)。

目前ACPI已經(jīng)定義了一個(gè)ACPI_PAD事件,對(duì)于每個(gè)事件,操作系統(tǒng)都有一個(gè)對(duì)應(yīng)的模塊對(duì)其進(jìn)行處理。對(duì)于ACPI_PAD事件,其對(duì)應(yīng)的對(duì)象為_PUR,_PUR對(duì)象可以向操作系統(tǒng)傳送需要設(shè)置為空閑狀態(tài)的核心的總數(shù)量,但是不能向操作系統(tǒng)傳送具體的核心編號(hào),因此,本實(shí)施例在具體實(shí)施時(shí),需要擴(kuò)展_PUR蘋果定義,或者新增一個(gè)對(duì)象,來向操作系統(tǒng)傳送需要設(shè)置為空閑狀態(tài)的核心編號(hào)。

本領(lǐng)域技術(shù)人員應(yīng)該可以知道,若所述機(jī)器錯(cuò)誤信息為不可修正錯(cuò)誤信息,則根據(jù)不可修正錯(cuò)誤信息的類型,由機(jī)器自動(dòng)進(jìn)行處理,無需將該不可修正的機(jī)器錯(cuò)誤信息傳送至操作系統(tǒng)。例如,不可修正錯(cuò)誤信息分為可恢復(fù)、致命(fatal)和災(zāi)難(catastrophic)三種類型,對(duì)于致命和災(zāi)難類型的錯(cuò)誤信息,要么已經(jīng)導(dǎo)致機(jī)器無法正常啟動(dòng),要么是操作系統(tǒng)無法解決的錯(cuò)誤,因此無需將此錯(cuò)誤信息發(fā)送至操作系統(tǒng),對(duì)于可恢復(fù)的錯(cuò)誤信息,則可以進(jìn)行相應(yīng)的操作,如無需采取措施、提供可恢復(fù)操作選項(xiàng)進(jìn)行恢復(fù),以及可恢復(fù)必要操作等進(jìn)行自動(dòng)恢復(fù)。

解除進(jìn)程或中斷對(duì)所述核心的綁定。

具體地,由于邏輯核心編號(hào)對(duì)應(yīng)的核心發(fā)生了錯(cuò)誤,為防止發(fā)生更嚴(yán)重地的錯(cuò)誤,需要使該核心不再執(zhí)行進(jìn)程或線程,為防止有新的進(jìn)程被分配到該核心上去,需要解除進(jìn)程或中斷對(duì)該核心的綁定。

將所述核心執(zhí)行的線程調(diào)度出去或者新建一個(gè)空線程以最高優(yōu)先級(jí)去搶占其他核心;或者,

判斷是否需要遷移所述核心執(zhí)行的線程,若需要?jiǎng)t將所述線程遷移到其他核心。

為使出現(xiàn)錯(cuò)誤的核心所執(zhí)行的進(jìn)程或中斷能夠繼續(xù)得以執(zhí)行,在解除進(jìn)程或中斷對(duì)出現(xiàn)錯(cuò)誤的核心的綁定后,可以將所解除的進(jìn)程或中斷調(diào)度或者遷移至其他核心。如果想將所述核心執(zhí)行的線程遷移至其他的核心,可以采用現(xiàn)有技術(shù)中的處理器內(nèi)部的線程遷移技術(shù)來對(duì)線程進(jìn)行遷移。

將所述邏輯核心編號(hào)對(duì)應(yīng)的核心由調(diào)度列表中移除。

具體地,由于可修正錯(cuò)誤信息發(fā)生在邏輯核心編號(hào)對(duì)應(yīng)的核心,因此,可以將該核心由調(diào)度列表中移除,使其不再執(zhí)行進(jìn)程或中斷,以避免進(jìn)一步的致命錯(cuò)誤的發(fā)生。

將所述核心設(shè)置為邏輯空閑狀態(tài)。

具體地,由于所述邏輯核心編號(hào)對(duì)應(yīng)的核心出現(xiàn)錯(cuò)誤,為了避免更嚴(yán)重的錯(cuò)誤發(fā)生,則將該核心設(shè)置為邏輯空閑狀態(tài),使其不再執(zhí)行新的進(jìn)程或中斷,以避免出現(xiàn)更嚴(yán)重的錯(cuò)誤。下面對(duì)本實(shí)施例進(jìn)行詳細(xì)的舉例說明,例如,處理器中有N個(gè)核心,核心2發(fā)生了可修正錯(cuò)誤,固件(UEFI/BIOS)先于操作系統(tǒng)(Operating System,OS)獲得該錯(cuò)誤信息,則固件向操作系統(tǒng)發(fā)送了機(jī)器錯(cuò)誤信息以通知OS將核心2移除,此時(shí)執(zhí)行ACPI處理器的聚合設(shè)備處理程序(Processor Aggregator Device Handler),然后處理器將核心2從調(diào)度列表中移除,使新的進(jìn)程或中斷不再占用核心2,核心2的線程程調(diào)度或者遷移至其他的核心,再將核心2設(shè)置為空閑狀態(tài)。具體過程如圖3所示。

本發(fā)明實(shí)施例的技術(shù)方案通過讀取MCA錯(cuò)誤信息,當(dāng)MCA錯(cuò)誤信息為可修正錯(cuò)誤信息時(shí),將所述邏輯核心編號(hào)對(duì)應(yīng)的核心由調(diào)度列表中移除,并解除進(jìn)程或中斷對(duì)該核心的綁定,將線程調(diào)度或遷移到其他核心,同時(shí)將所述核心設(shè)置于邏輯空閑狀態(tài),以避免可能出現(xiàn)的致命錯(cuò)誤。

圖4為本發(fā)明的處理器預(yù)測(cè)故障分析裝置的一種實(shí)施例的示意圖,如圖4所示,本實(shí)施例的處理器預(yù)測(cè)故障分析裝置,具體可以包括接收模塊、獲取模塊、移除模塊和設(shè)置模塊。

接收模塊,配置為接收硬件系統(tǒng)發(fā)送的機(jī)器錯(cuò)誤信息;

獲取模塊,配置為當(dāng)所述機(jī)器錯(cuò)誤信息為可修正錯(cuò)誤信息時(shí),、獲取所述可修正錯(cuò)誤信息對(duì)應(yīng)的邏輯核心編號(hào);

移除模塊,配置為將所述邏輯核心編號(hào)對(duì)應(yīng)的核心由調(diào)度列表中移除;

設(shè)置模塊,配置為將所述核心設(shè)置為邏輯空閑狀態(tài)。

本實(shí)施例的處理器預(yù)測(cè)故障分析裝置,通過采用上述模塊對(duì)處理器故障進(jìn)行預(yù)測(cè),以避免出現(xiàn)致命錯(cuò)誤的實(shí)現(xiàn)機(jī)制與上述圖1所示實(shí)施例的處理器預(yù)測(cè)故障分析方法的實(shí)現(xiàn)機(jī)制相同,詳細(xì)可以參考上述圖1所示實(shí)施例的記載,在此不再贅述。

圖5為本發(fā)明的處理器預(yù)測(cè)故障分析裝置的另一種實(shí)施例的示意圖,本實(shí)施例的處理器預(yù)測(cè)故障分析裝置在如圖4所示的實(shí)施例的基礎(chǔ)上,進(jìn)一步更加詳細(xì)地介紹本發(fā)明的技術(shù)方案。

如圖5所示,本實(shí)施例的處理器預(yù)測(cè)故障分析裝置,進(jìn)一步可以包括:

所述獲取模塊,包括:

觸發(fā)子模塊,配置為觸發(fā)高級(jí)配置和電源管理接口事件,以通過高級(jí)配置和電源管理接口對(duì)象獲取所述可修正錯(cuò)誤信息對(duì)應(yīng)的邏輯核心編號(hào)。

所述裝置還包括:

解除綁定模塊,配置為將所述邏輯核心編號(hào)對(duì)應(yīng)的核心由調(diào)度列表中移除之前,解除進(jìn)程或中斷對(duì)所述核心的綁定。

所述裝置還包括:

處理模塊,配置為將所述邏輯核心編號(hào)對(duì)應(yīng)的核心由調(diào)度列表中移除之前,將所述核心執(zhí)行的線程調(diào)度出去或者新建一個(gè)空線程以最高優(yōu)先級(jí)去搶占其他核心;或者,

配置為將所述邏輯核心編號(hào)對(duì)應(yīng)的核心由調(diào)度列表中移除之前,判斷是否需要遷移所述核心執(zhí)行的線程,若需要?jiǎng)t將所述線程遷移到其他核心。

本實(shí)施例的處理器預(yù)測(cè)故障分析裝置,通過采用上述模塊對(duì)處理器故障進(jìn)行預(yù)測(cè),以避免出現(xiàn)致命錯(cuò)誤的實(shí)現(xiàn)機(jī)制與上述圖2所示實(shí)施例的處理器預(yù)測(cè)故障分析方法的實(shí)現(xiàn)機(jī)制相同,詳細(xì)可以參考上述圖2所示實(shí)施例的記載,在此不再贅述。

以上實(shí)施例僅為本發(fā)明的示例性實(shí)施例,不用于限制本發(fā)明,本發(fā)明的保護(hù)范圍由權(quán)利要求書限定。本領(lǐng)域技術(shù)人員可以在本發(fā)明的實(shí)質(zhì)和保護(hù)范圍內(nèi),對(duì)本發(fā)明做出各種修改或等同替換,這種修改或等同替換也應(yīng)視為落在本發(fā)明的保護(hù)范圍內(nèi)。

當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1