專利名稱:故障跟蹤的方法及裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及處理器技術(shù)領(lǐng)域,尤其涉及一種故障跟蹤的方法及裝置。
背景技術(shù):
目前,片上網(wǎng)絡(luò)NOC(英文全稱為Networks-on_Chip,中文全稱為片上網(wǎng)絡(luò))已經(jīng)成為多核處理器和多處理器計(jì)算機(jī)核間通信的高效解決方案而被廣泛采用。由于片上網(wǎng)絡(luò)的集成度高,會(huì)造成片上路由器和片上網(wǎng)絡(luò)鏈路因?yàn)榘l(fā)熱、外部輻射等因素容易引起故障,使得系統(tǒng)不可靠甚至失效。因此,我們需要設(shè)計(jì)具有容錯(cuò)能力的系統(tǒng)。這就需要了解和分析系統(tǒng)設(shè)計(jì)方案在常見的故障發(fā)生時(shí)的故障行為和對(duì)系統(tǒng)的影響。針對(duì)上述問(wèn)題,現(xiàn)有技術(shù)一般采用以下做法針對(duì)擬采用的NOC方案,在FPGA (英 文全稱為Field-Programmable Gate Array,中文全稱為可編程邏輯門陣列)平臺(tái)上實(shí)現(xiàn)RTL(英文全稱為Resistor Transistor Logic,中文全稱為晶體管邏輯)級(jí)別的仿真器,用以實(shí)現(xiàn)對(duì)片上路由器和片上鏈路的仿真。在上述技術(shù)方案中,在片上路由器和片上鏈路上設(shè)計(jì)相應(yīng)的故障觸發(fā)機(jī)關(guān),并通過(guò)使用狀態(tài)檢測(cè)部件或觀察仿真時(shí)序方式來(lái)記錄和檢測(cè)故障行為。在實(shí)現(xiàn)上述現(xiàn)有技術(shù)提供的技術(shù)方案的過(guò)程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)中存在如下問(wèn)題通過(guò)狀態(tài)檢測(cè)部件或觀察仿真時(shí)序方式來(lái)記錄和檢測(cè)故障行為,只能粗略地記錄檢測(cè)到的故障行為,從而不能獲得詳細(xì)、完整的仿真全系統(tǒng)內(nèi)部的故障信息。
發(fā)明內(nèi)容
本發(fā)明的實(shí)施例提供一種故障跟蹤的方法及裝置,能夠詳細(xì)、完整地檢測(cè)、記錄仿真全系統(tǒng)內(nèi)部的故障行為。為達(dá)到上述目的,本發(fā)明的實(shí)施例采用如下技術(shù)方案一種故障跟蹤的方法,包括當(dāng)故障注入時(shí),檢測(cè)當(dāng)前設(shè)備運(yùn)行狀態(tài);當(dāng)檢測(cè)到所述當(dāng)前設(shè)備發(fā)生故障時(shí),將所述當(dāng)前設(shè)備確定為故障源,并使用故障源標(biāo)識(shí)信息標(biāo)識(shí)所述當(dāng)前設(shè)備,將所述當(dāng)前設(shè)備發(fā)送的故障數(shù)據(jù)確定為故障載體,并使用故障載體標(biāo)識(shí)信息標(biāo)識(shí)所述故障數(shù)據(jù);根據(jù)所述故障源以及所述故障載體,生成故障路徑信息。一種故障跟蹤的裝置,包括第一檢測(cè)單元,用于當(dāng)故障注入時(shí),檢測(cè)當(dāng)前設(shè)備運(yùn)行狀態(tài);標(biāo)識(shí)單元,用于當(dāng)所述第一檢測(cè)單元檢測(cè)到所述當(dāng)前設(shè)備發(fā)生故障時(shí),將所述當(dāng)前設(shè)備確定為故障源,并使用故障源標(biāo)識(shí)信息標(biāo)識(shí)所述當(dāng)前設(shè)備,將所述當(dāng)前設(shè)備發(fā)送的故障數(shù)據(jù)確定為故障載體,并使用故障載體標(biāo)識(shí)信息標(biāo)識(shí)所述故障數(shù)據(jù);生成單元,用于根據(jù)所述標(biāo)識(shí)單元確定的所述故障源以及所述故障載體,生成故障路徑信息
本發(fā)明實(shí)施例提供的故障跟蹤的方法及裝置。在故障注入時(shí),檢測(cè)當(dāng)前設(shè)備的運(yùn)行狀態(tài);如果檢測(cè)到該設(shè)備發(fā)生故障時(shí),則將這個(gè)設(shè)備標(biāo)記為故障源,并將這個(gè)設(shè)備發(fā)出的故障數(shù)據(jù)標(biāo)記為故障載體;然后根據(jù)故障源和故障載體,生成故障路徑信息。由于現(xiàn)有技術(shù)提供的技術(shù)方案只能記錄故障引發(fā)的現(xiàn)象,而本發(fā)明實(shí)施例的技術(shù)方案,可以檢測(cè)故障行為,記錄故障源和故障載體,并根據(jù)故障源和故障載體生成故障路徑信息,從而能夠詳細(xì)描述故障路徑,用以描述引起故障現(xiàn)象的具體故障行為,相比于現(xiàn)有技術(shù)提供的技術(shù)方案來(lái)說(shuō),能夠更詳細(xì)、完整地檢測(cè)、記錄仿真全系統(tǒng)內(nèi)部的故障行為。
為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖I為本發(fā)明實(shí)施例I中的一種故障跟蹤方法的流程圖;圖2為本發(fā)明實(shí)施例2中的一種故障跟蹤方法的流程圖;圖3為本發(fā)明實(shí)施例2中的另一種故障跟蹤方法的流程圖;圖4為本發(fā)明實(shí)施例2中的另一種故障跟蹤裝置的組成框圖;圖5為本發(fā)明實(shí)施例3中的一種故障跟蹤裝置的組成框圖;圖6為本發(fā)明實(shí)施例3中的另一種故障跟蹤裝置的組成框圖;圖7為本發(fā)明實(shí)施例3中的另一種故障跟蹤裝置的組成框圖;圖8為本發(fā)明實(shí)施例3中的另一種故障跟蹤裝置的組成框圖;圖9為本發(fā)明實(shí)施例4中的一種故障跟蹤裝置的組成框圖。
具體實(shí)施例方式下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。實(shí)施例I本發(fā)明實(shí)施例提供了一種故障跟蹤的方法,如圖I所示,該方法包括101、當(dāng)故障注入時(shí),檢測(cè)當(dāng)前設(shè)備運(yùn)行狀態(tài)。其中,所述故障包括處理器類故障、存儲(chǔ)類故障、路由類故障、鏈路類故障等類型。其中,所述處理器類故障可以包括處理器單元失效、處理器執(zhí)行單元故障、處理器寄存器故障等;所述存儲(chǔ)類故障可以包括內(nèi)存單元失效、內(nèi)存地址生成錯(cuò)誤等;所述路由類故障可以包括路由錯(cuò)誤、路由失效、路由重復(fù)等;所述鏈路類故障可以包括路由器間鏈路中斷、路由器到處理單元間鏈路中斷、鏈路阻塞、數(shù)據(jù)丟失等。比如,路由錯(cuò)誤故障可以在路由模塊中讓正確的路由轉(zhuǎn)發(fā)端口增加一個(gè)隨機(jī)數(shù)或者按照某種邏輯設(shè)置錯(cuò)誤的路由轉(zhuǎn)發(fā)端口來(lái)實(shí)現(xiàn)故障注入;又如,鏈路中斷故障可以在互連配置文件中將兩個(gè)節(jié)點(diǎn)的時(shí)延設(shè)置成一個(gè)非常大的值來(lái)實(shí)現(xiàn)故障注入,比如可以是通過(guò)將互聯(lián)網(wǎng)絡(luò)中相關(guān)鏈路時(shí)延置為原時(shí)延值得一百萬(wàn)倍。其中,所述當(dāng)前設(shè)備可以為處理器、內(nèi)存、路由器等設(shè)備中的任意一種或幾種,本發(fā)明實(shí)施例在此不列舉。102、當(dāng)檢測(cè)到所述當(dāng)前設(shè)備發(fā)生故障時(shí),將所述當(dāng)前設(shè)備確定為故障源,并使用故障源標(biāo)識(shí)信息標(biāo)識(shí)所述當(dāng)前設(shè)備,將所述當(dāng)前設(shè)備發(fā)送的故障數(shù)據(jù)確定為故障載體,并使用故障載體標(biāo)識(shí)信息標(biāo)識(shí)所述故障數(shù)據(jù)。其中,故障源標(biāo)識(shí)信息可以設(shè)置為任何具有標(biāo)識(shí)功能的信息,例如,可以將故障源標(biāo)識(shí)信息設(shè)置為設(shè)備的配置文件中的一個(gè)固定參數(shù),并定義O表示不存在故障,I表示存在故障,則使用該故障源標(biāo)識(shí)信息標(biāo)識(shí)所述當(dāng)前設(shè)備可以通過(guò)以下方法來(lái)實(shí)現(xiàn),包括在所述當(dāng)前設(shè)備不為故障源時(shí),所述配置文件中具有標(biāo)識(shí)故障功能的參數(shù)保持為O ;在將所述當(dāng)前設(shè)備確定為故障源時(shí),將該設(shè)備的配置文件中的具有標(biāo)識(shí)故障功能的參數(shù)設(shè)置為I。值得說(shuō)明的是,這只是故障源標(biāo)識(shí)信息和使用故障源標(biāo)識(shí)信息標(biāo)識(shí)所述當(dāng)前設(shè)備的實(shí)現(xiàn)方法的一種示例,本發(fā)明實(shí)施例對(duì)此不進(jìn)行限制。其中,故障載體標(biāo)識(shí)信息可以設(shè)置為任何具有標(biāo)識(shí)功能的信息,例如,可以將故障載體標(biāo)識(shí)信息設(shè)置為數(shù)據(jù)包中的一個(gè)固定比特位bit,并定義O表示不存在故障,I表示存在故障,則使用該故障載體標(biāo)識(shí)信息標(biāo)識(shí)所述故障載體可以通過(guò)以下方法來(lái)實(shí)現(xiàn),包括在所述故障載體不存在故障數(shù)據(jù)時(shí),所述具有標(biāo)識(shí)故障功能的比特位bit保持為0,;在將所述故障載體存在故障數(shù)據(jù)時(shí),將具有標(biāo)識(shí)故障功能的比特位bit設(shè)置為I。 值得說(shuō)明的是,標(biāo)識(shí)故障源與標(biāo)識(shí)故障載體的實(shí)現(xiàn)方法可以是類似的,這只是故障載體標(biāo)識(shí)信息和使用故障載體標(biāo)識(shí)信息標(biāo)識(shí)所述故障載體的實(shí)現(xiàn)方法的一種示例,本發(fā)明實(shí)施例對(duì)此不進(jìn)行限制。另外,值得說(shuō)明的是,故障載體包括數(shù)據(jù)包、處理器指令等。103、根據(jù)所述故障源以及所述故障載體,生成故障路徑信息,以記錄所述故障注入的故障信息。值得說(shuō)明的是,所述故障路徑信息是指故障源與故障載體以多叉樹的數(shù)據(jù)結(jié)構(gòu)的形式表不故障行為。一次故障注入僅對(duì)應(yīng)生成一個(gè)多叉樹。其中,該多叉樹可以包括本次故障注入后產(chǎn)生的多個(gè)故障源和故障載體,且該多叉樹是由一層故障源節(jié)點(diǎn)與一層故障載體節(jié)點(diǎn)交替構(gòu)成。一次故障注入生成與之對(duì)應(yīng)的一個(gè)以多叉樹形式表示的故障路徑信息,故障路徑信息是根據(jù)故障源節(jié)點(diǎn)信息與故障載體節(jié)點(diǎn)信息中故障源節(jié)點(diǎn)與故障載體節(jié)點(diǎn)的對(duì)應(yīng)關(guān)系來(lái)生成的。其中,故障源節(jié)點(diǎn)與故障載體節(jié)點(diǎn)的對(duì)應(yīng)關(guān)系由故障源節(jié)點(diǎn)信息與故障載體節(jié)點(diǎn)信息中的節(jié)點(diǎn)指針來(lái)確定。具體的,故障源節(jié)點(diǎn)信息中可以包括該故障源節(jié)點(diǎn)的父節(jié)點(diǎn)指針及子節(jié)點(diǎn)指針,其中,父節(jié)點(diǎn)指針用于標(biāo)識(shí)該故障源節(jié)點(diǎn)的父節(jié)點(diǎn),此父節(jié)點(diǎn)即為該故障源節(jié)點(diǎn)接收到的故障載體對(duì)應(yīng)的節(jié)點(diǎn);子節(jié)點(diǎn)指針用于標(biāo)識(shí)該故障源節(jié)點(diǎn)的子節(jié)點(diǎn),此子節(jié)點(diǎn)即為該故障源節(jié)點(diǎn)發(fā)出的故障載體對(duì)應(yīng)的節(jié)點(diǎn)。故障載體節(jié)點(diǎn)信息中可以包括該故障載體節(jié)點(diǎn)的父節(jié)點(diǎn)指針及子節(jié)點(diǎn)指針,其中,父節(jié)點(diǎn)指針用于標(biāo)識(shí)該故障載體節(jié)點(diǎn)的父節(jié)點(diǎn),此父節(jié)點(diǎn)即為該發(fā)送該故障載體的故障源對(duì)應(yīng)的節(jié)點(diǎn);子節(jié)點(diǎn)指針用于標(biāo)識(shí)該故障源節(jié)點(diǎn)的子節(jié)點(diǎn),此子節(jié)點(diǎn)即為該接收該故障載體的故障源對(duì)應(yīng)的節(jié)點(diǎn)。基于這些指針信息,即可確定各個(gè)故障源和各個(gè)故障載體之間在多叉樹上的連接關(guān)系,并藉此生成多叉樹。
此外,值得說(shuō)明的是,故障源節(jié)點(diǎn)信息還可以但不局限于包括故障源標(biāo)號(hào)信息、故障源類型、故障源位置等,故障載體節(jié)點(diǎn)信息包括故障載體標(biāo)號(hào)信息、故障載體類型等。本發(fā)明實(shí)施例提供的故障跟蹤的方法,在故障注入時(shí),檢測(cè)當(dāng)前設(shè)備的運(yùn)行狀態(tài);如果檢測(cè)到該設(shè)備發(fā)生故障時(shí),則將這個(gè)設(shè)備標(biāo)記為故障源,并將這個(gè)設(shè)備發(fā)出的故障數(shù)據(jù)標(biāo)記為故障載體;然后根據(jù)故障源和故障載體,生成故障路徑信息。由于現(xiàn)有技術(shù)提供的技術(shù)方案只能記錄故障引發(fā)的現(xiàn)象,而本發(fā)明實(shí)施例的技術(shù)方案,可以檢測(cè)故障行為,記錄故障源和故障載體,并根據(jù)故障源和故障載體生成故障路徑信息,從而能夠詳細(xì)描述故障路徑,用以描述引起故障現(xiàn)象的具體故障行為,相比于現(xiàn)有技術(shù)提供的技術(shù)方案來(lái)說(shuō),能夠更詳細(xì)、完整地檢測(cè)、記錄仿真全系統(tǒng)內(nèi)部的故障行為。實(shí)施例2本發(fā)明實(shí)施例提供了一種故障跟蹤的方法,如圖2所示,該方法包括201、建立仿真全系統(tǒng)。 其中,所述仿真系全系統(tǒng)用于對(duì)真實(shí)系統(tǒng)進(jìn)行仿真。值得說(shuō)明的是,建立仿真全系統(tǒng)可以使用現(xiàn)有的開源的模擬器,或者現(xiàn)有的商業(yè)模擬器,也可以針對(duì)目標(biāo)系統(tǒng)自行開發(fā)全系統(tǒng)模擬器或者模擬器的部分模塊。構(gòu)建的模擬器能夠模擬實(shí)現(xiàn)目標(biāo)系統(tǒng)的主要結(jié)構(gòu)特性和功能,并遵循以下三項(xiàng)要求第一項(xiàng)要求模擬精度是周期精確的,也就是說(shuō),模擬能夠精確到每一個(gè)周期,即知道在一個(gè)周期中做的處理以及花費(fèi)的時(shí)間。第二項(xiàng)要求具有全系統(tǒng)模擬能力,可以運(yùn)行真實(shí)的操作系統(tǒng)和應(yīng)用。也就是說(shuō),用來(lái)構(gòu)建全系統(tǒng)的模擬器具有模擬全系統(tǒng)中若干部分的功能,即全系統(tǒng)模擬功能的實(shí)現(xiàn)需要用到若干種模擬器。第三項(xiàng)要求具有一定的靈活性,即可以靈活的添加一些監(jiān)測(cè)器、配置體系結(jié)構(gòu)參數(shù)等。其中檢測(cè)器的功能包括檢測(cè)當(dāng)前設(shè)備是否存在故障,配置體系的固定參數(shù)包括故障觸發(fā)率、故障觸發(fā)條件等。其中,全系統(tǒng)由處理器、內(nèi)存、路由器等設(shè)備組成,用于運(yùn)行真實(shí)系統(tǒng)的操作系統(tǒng)和應(yīng)用,比如運(yùn)行Linux系統(tǒng)。其中,真實(shí)系統(tǒng)是與目標(biāo)NOC設(shè)計(jì)方案具有一定共性的現(xiàn)有多核/多處理器系統(tǒng)或者針對(duì)目標(biāo)NOC設(shè)計(jì)方案實(shí)現(xiàn)的原型系統(tǒng)。202、獲取所述仿真全系統(tǒng)仿真的真實(shí)系統(tǒng)中存在的真實(shí)故障以及所述仿真全系統(tǒng)中的潛在故障。其中,真實(shí)故障或潛在故障可以包括處理器類故障、存儲(chǔ)類故障、路由類故障、鏈路類故障等。其中,所述真實(shí)故障或潛在故障的有關(guān)描述與所述步驟101中的對(duì)于故障的有關(guān)描述相同,本發(fā)明實(shí)施例對(duì)此不再詳細(xì)描述。203、將獲取到的所述仿真全系統(tǒng)仿真的真實(shí)系統(tǒng)中存在的真實(shí)故障以及所述仿真全系統(tǒng)中的潛在故障按照預(yù)定格式進(jìn)行存儲(chǔ)。其中,將上述的真實(shí)故障以及潛在故障根據(jù)步驟202中描述的故障分類將故障進(jìn)行分類,并按照預(yù)定格式,形成故障類型庫(kù)。
其中,預(yù)定格式包括故障類型、故障觸發(fā)概率、故障觸發(fā)條件等??梢圆捎眯问交姆绞綄?duì)所述故障預(yù)定格式進(jìn)行描述,具體如下Fault = (type, location, probability, Condition);其中,Type 表不故障類型、location表示故障位置、probability表示故障觸發(fā)概率、Condition表示故障條件描述。一個(gè)故障由故障類型、故障位置、故障觸發(fā)概率、故障條件描述。Type= {P,M,R,L};即故障類型包括P、M、R、L。其中,P表示處理器類故障,M表示存儲(chǔ)類故障,R表示路由類故障,L表示鏈路類故障。P= {node, exec, rigister};即處理器類故障包括 node, exec, rigister。其中,node表示處理器單元失效,exec表示處理器執(zhí)行單元故障,rigister表示處理器寄存器故 障。M= {unit, address};即存儲(chǔ)類故障包括unit, address。其中,unit表不內(nèi)存單元失效,address表示內(nèi)存地址生成錯(cuò)誤。R= {error, failure, reroute};即路由類故障包括 error, failure, reroute。其中,error表示路由錯(cuò)誤,failure表示路由失效,reroute表示路由重復(fù)。L = {break, block, loss};即鏈路類故障包括 break, block, loss。其中,break表示路由器間鏈路中斷、路由器到處理單元間鏈路中斷,block表示鏈路阻塞,loss表示數(shù)據(jù)丟失。Location = {根據(jù)故障類型,location可以是部件號(hào)(處理器單元號(hào)、寄存器號(hào)),內(nèi)存單元地址或者鏈路標(biāo)號(hào)、路由器號(hào)等}。即故障位置中的數(shù)據(jù)所代表的具體含義根據(jù)故障類型的不同而有所不同。Probability = {x| I > x > = 0},也就是說(shuō)故障觸發(fā)概率是大于等于O且小于I的數(shù)值。Condition = {execution time, random, etal. }。即故障條件描述包括!executiontime, random ο其中execution time表示按執(zhí)行時(shí)間觸發(fā),random表示隨機(jī)觸發(fā),etal意為等等,表示故障條件描述不局限于列舉的這兩種,在此不作一一列舉。通過(guò)形式化描述,可以方便地增加或者刪減故障庫(kù)中故障類型。同時(shí),也方便配置故障在模擬器中觸發(fā)運(yùn)行。比如,配置一個(gè)node I到node3之間的鏈路故障,觸發(fā)概率為0. 2,隨機(jī)觸發(fā),可以描述為Fault = (type L break, I- > 3,0. 2, random)值得說(shuō)明的是,這只是對(duì)故障預(yù)定格式描述方法的一種示例,比如,故障類型并不只包括上述列舉的四種類型,故障位置、故障觸發(fā)概率、故障條件描述也并不局限于上述列舉實(shí)例,本發(fā)明實(shí)施例對(duì)此不進(jìn)行限制。204、從所述按照預(yù)定格式存儲(chǔ)的故障信息中選取任意一個(gè),進(jìn)行故障注入。其中,故障注入即按照預(yù)定格式觸發(fā)故障。也就是說(shuō),系統(tǒng)或應(yīng)用運(yùn)行過(guò)程中滿足相關(guān)故障觸發(fā)條件,比如系統(tǒng)到某個(gè)預(yù)設(shè)的時(shí)間點(diǎn)或者隨機(jī)觸發(fā)故障成功等,預(yù)設(shè)的故障就會(huì)被觸發(fā)運(yùn)行。205、當(dāng)故障注入時(shí),檢測(cè)當(dāng)前設(shè)備運(yùn)行狀態(tài)。206、當(dāng)檢測(cè)到所述當(dāng)前設(shè)備發(fā)生故障時(shí),將發(fā)生故障的當(dāng)前設(shè)備確定為故障源,并使用故障源標(biāo)識(shí)信息標(biāo)識(shí)所述當(dāng)前設(shè)備。其中,所述故障源標(biāo)識(shí)信息以及所述使用故障源標(biāo)識(shí)信息標(biāo)識(shí)所述當(dāng)前設(shè)備的實(shí)現(xiàn)方法與所述步驟102中的有關(guān)描述相同,本發(fā)明實(shí)施例對(duì)此不再詳細(xì)描述。進(jìn)一步,需要說(shuō)明的是,由于在仿真全系統(tǒng)中存在一部分設(shè)備能夠通過(guò)自復(fù)位等操作自發(fā)從故障狀態(tài)轉(zhuǎn)化為正常工作狀態(tài),這些設(shè)備需要清除相應(yīng)的故障標(biāo)識(shí),具體的方法包括。
檢測(cè)是否有故障源標(biāo)識(shí)信息標(biāo)識(shí)該設(shè)備。若檢測(cè)到所述當(dāng)前設(shè)備已被所述故障源標(biāo)識(shí)信息標(biāo)識(shí)且所述當(dāng)前設(shè)備發(fā)生故障時(shí),保持所述故障源標(biāo)識(shí)信息不變。若檢測(cè)到所述發(fā)生故障的當(dāng)前設(shè)備已被所述故障源標(biāo)識(shí)信息標(biāo)識(shí)且所述當(dāng)前設(shè)備正常時(shí),將所述當(dāng)前設(shè)備的故障源標(biāo)識(shí)信息修改為正常狀態(tài)。例如,以實(shí)施例I中步驟102的標(biāo)識(shí)信息的相關(guān)描述為例,O表不不存在故障,I表不存在故障,將故障源的標(biāo)識(shí)信息修改為正常狀態(tài),即將標(biāo)識(shí)信息由“I”修改為“O”。207、將所述故障源發(fā)送的故障數(shù)據(jù)確定為故障載體,并使用所述故障載體標(biāo)識(shí)信息標(biāo)識(shí)所述故障數(shù)據(jù)。其中,值得說(shuō)明的是,所述將所述故障源發(fā)送的故障數(shù)據(jù)確定為故障載體,并使用所述故障載體標(biāo)識(shí)信息標(biāo)識(shí)所述故障數(shù)據(jù)可以通過(guò)以下方法實(shí)現(xiàn),如圖3所示,該方法具體包括2071、檢測(cè)所述故障源發(fā)送的所有數(shù)據(jù)。值得說(shuō)明的是,此處的所有數(shù)據(jù)包括數(shù)據(jù)包、處理器指令等。2072、若檢測(cè)到所述故障源發(fā)送的數(shù)據(jù)中存在故障數(shù)據(jù),則確定所述故障數(shù)據(jù)為故障載體,并檢測(cè)所述故障數(shù)據(jù)中是否攜帶有故障載體標(biāo)識(shí)信息。其中,故障載體標(biāo)識(shí)信息可以設(shè)置為任何具有標(biāo)識(shí)功能的信息,例如,可以將故障載體標(biāo)識(shí)信息設(shè)置為數(shù)據(jù)包一個(gè)固定比特位bit,并定義O表示不存在故障,I表示存在故障,則使用該故障載體標(biāo)識(shí)信息標(biāo)識(shí)所述故障載體可以通過(guò)以下方法來(lái)實(shí)現(xiàn),包括在所述故障載體不存在故障數(shù)據(jù)時(shí),所述具有標(biāo)識(shí)故障功能的比特位bit保持為0,;在將所述故障載體存在故障數(shù)據(jù)時(shí),將具有標(biāo)識(shí)故障功能的比特位bit設(shè)置為I。因此,監(jiān)測(cè)器檢測(cè)到故障源發(fā)送的數(shù)據(jù)中比特位bit為O時(shí),則表示所述發(fā)送的數(shù)據(jù)中不存在故障數(shù)據(jù);當(dāng)檢測(cè)到故障源發(fā)送的數(shù)據(jù)中固定比特位bit為1,則表示所述發(fā)送的數(shù)據(jù)中存在故障數(shù)據(jù)。值得說(shuō)明的是,這只是故障數(shù)據(jù)檢測(cè)實(shí)現(xiàn)方法的一種示例,本發(fā)明實(shí)施例對(duì)此不進(jìn)行限制。2073、若檢測(cè)到所述故障數(shù)據(jù)中未攜帶故障載體標(biāo)識(shí)信息,則使用所述故障載體標(biāo)識(shí)信息標(biāo)識(shí)所述故障數(shù)據(jù)。2074、若檢測(cè)到所述故障數(shù)據(jù)中已攜帶有故障載體標(biāo)識(shí)信息,則保持所述故障載體標(biāo)識(shí)信息不變。208、根據(jù)所述故障源以及所述故障載體,生成故障路徑信息,所述故障路徑信息由多叉樹的數(shù)據(jù)結(jié)構(gòu)實(shí)現(xiàn)。其中,根據(jù)所述故障源以及所述故障載體,生成故障路徑信息的實(shí)現(xiàn)方法具體包括2081、獲取所述故障源對(duì)應(yīng)的故障源節(jié)點(diǎn)信息和所述故障載體對(duì)應(yīng)的故障載體節(jié)點(diǎn)信息。2082、根據(jù)所述故障源節(jié)點(diǎn)信息,確定在所述故障路徑信息的多叉樹結(jié)構(gòu)中與所述故障源連接的故障載體。2083、根據(jù)所述故障載體節(jié)點(diǎn)信息,確定在所述故障路徑信息的多叉樹結(jié)構(gòu)中與所述故障載體連接的故障源。2084、根據(jù)當(dāng)前故障源與故障載體之間的連接關(guān)系,確定所述故障路徑信息。值得說(shuō)明的是,所述故障路徑信息由多叉樹的數(shù)據(jù)結(jié)構(gòu)實(shí)現(xiàn),是根據(jù)故障源節(jié)點(diǎn)與故障載體節(jié)點(diǎn)的對(duì)應(yīng)關(guān)系生成的。其中,故障源節(jié)點(diǎn)與故障載體節(jié)點(diǎn)的對(duì)應(yīng)關(guān)系在實(shí)施例I中步驟103的相關(guān)描述是相同的,在此不再重復(fù)說(shuō)明。值得說(shuō)明的是,本發(fā)明實(shí)施例結(jié)合圖4所示的多叉樹來(lái)具體描述2081至2084的實(shí)現(xiàn)方法,包括 對(duì)于一個(gè)故障注入來(lái)說(shuō),用戶根據(jù)故障類型庫(kù)中的存儲(chǔ)的故障信息,指定在某一設(shè)備A上進(jìn)行故障注入,因?yàn)樵摴收鲜窃O(shè)置的設(shè)備A上的故障,故障注入后,則設(shè)備A必然發(fā)生故障。由此,確定設(shè)備A為多叉樹的根節(jié)點(diǎn),在本實(shí)施例中將設(shè)備A標(biāo)記為故障源ft_P。獲取當(dāng)前所有故障源節(jié)點(diǎn)信息及故障載體節(jié)點(diǎn)信息,在本實(shí)施例中,具體如下故障源ft_P的故障源節(jié)點(diǎn)信息標(biāo)識(shí)了與故障源ft_P連接的故障載體為ft_P_fdl、ft_P_fd2、ft_P_fd3 ;故障載體ft_P_fdl的故障載體節(jié)點(diǎn)信息標(biāo)識(shí)了與故障載體ft_P_fdl連接的故障源為 ft_P 和 ft_P_fdl_ftl ;故障載體ft_P_fd2的故障載體節(jié)點(diǎn)信息標(biāo)識(shí)了與故障載體ft_P_fd2連接的故障源為 ft_p 和 ft_P_fd2_ftl ;故障載體ft_P_fd3的故障載體節(jié)點(diǎn)信息標(biāo)識(shí)了與故障載體ft_P_fd3連接的故障源為 ft_P 和 ft_P_fd3_ftl ;故障源ft_P_fdl_ftl的故障源節(jié)點(diǎn)信息標(biāo)識(shí)了與故障源ft_P_fdl_ftl連接的故障載體為ft_P_fdl ;故障源ft_P_fd2_ftl的故障源節(jié)點(diǎn)信息標(biāo)識(shí)了與故障源ft_P_fd2_ftl連接的故障載體為ft_P_fd2 ;故障源ft_P_fd3_ftl的故障源節(jié)點(diǎn)信息標(biāo)識(shí)了與故障源ft_P_fd3_ftl連接的故障載體為ft_P_fd3。根據(jù)上述連接關(guān)系,生成以故障源ft_P為根節(jié)點(diǎn)的多叉樹,用以表示故障路徑信
肩、O當(dāng)以故障源ft_P為根節(jié)點(diǎn)的多叉樹中的葉子節(jié)點(diǎn),例如故障源ft_P_fd2_ftl檢測(cè)發(fā)現(xiàn)故障時(shí),獲取其對(duì)應(yīng)的故障源節(jié)點(diǎn)信息,確定其在多叉樹中的連接關(guān)系,即確定該故障源節(jié)點(diǎn)ft_P_fd2_ftl的父節(jié)點(diǎn)以及該故障源節(jié)點(diǎn)的子節(jié)點(diǎn),從而使得基于ft_P為根節(jié)點(diǎn)的多叉樹繼續(xù)衍生多叉樹,記錄故障路徑信息。需要說(shuō)明的是,如圖4所示的多叉樹在本發(fā)明實(shí)施例中僅是一種示例,根據(jù)注入故障不同,生成多叉樹也不同。并且,用于標(biāo)識(shí)故障路徑信息的多叉樹是基于故障注入設(shè)備為根節(jié)點(diǎn)進(jìn)行衍生的,該多叉樹在仿真全系統(tǒng)無(wú)法運(yùn)行時(shí)或在該多叉樹深度達(dá)到預(yù)設(shè)的值時(shí),停止衍生。209、顯示所述故障路徑信息。本發(fā)明實(shí)施例提供的故障跟蹤的方法。在故障注入時(shí),檢測(cè)當(dāng)前設(shè)備的運(yùn)行狀態(tài)。如果檢測(cè)到該設(shè)備發(fā)生故障時(shí),則將這個(gè)設(shè)備標(biāo)記為故障源,并將這個(gè)設(shè)備發(fā)出的故障數(shù)據(jù)標(biāo)記為故障載體,然后根據(jù)故障源和故障載體,生成故障路徑信息。由于現(xiàn)有技術(shù)提供的技術(shù)方案只能記錄故障引發(fā)的現(xiàn)象,而本發(fā)明實(shí)施例的技術(shù)方案,可以檢測(cè)故障行為,記錄故障源和故障載體,并根據(jù)故障源和故障載體生成故障路徑信息,從而能夠詳細(xì)描述故障路徑,用以描述引起故障現(xiàn)象的具體故障行為,相比于現(xiàn)有技術(shù)提供的技術(shù)方案來(lái)說(shuō),能夠更詳細(xì)、完整地檢測(cè)、記錄仿真全系統(tǒng)內(nèi)部的故障行為。并且,本發(fā)明實(shí)施例提供的故障跟蹤的方法。構(gòu)建仿真全系統(tǒng),在仿真全系統(tǒng)上進(jìn)行故障注入。運(yùn)用模擬器構(gòu)建的仿真全系統(tǒng),擁有易修改、可定制的特點(diǎn),從而可以靈活地對(duì)不同系統(tǒng)參數(shù)設(shè)置進(jìn)行配置模擬,分析故障在不同配置下的特征。根據(jù)故障分類,將故障 按照預(yù)定格式存儲(chǔ),形成故障類型庫(kù),并按照預(yù)定格式觸發(fā)故障。故障根據(jù)預(yù)定格式存儲(chǔ),可以靈活的設(shè)置預(yù)定格式,配置不同的故障。比如根據(jù)預(yù)定格式可以將故障以多種故障條件描述觸發(fā)。以多叉樹等數(shù)據(jù)結(jié)構(gòu)表示故障路徑信息,并最終可顯示故障路徑信息,從而能夠可以詳細(xì)、完整地記錄更多的故障行為信息。實(shí)施例3本發(fā)明實(shí)施例提供了一種故障跟蹤的裝置,如圖5所示,該裝置包括第一檢測(cè)單元41、標(biāo)識(shí)單元42、生成單元43。第一檢測(cè)單元41,用于在故障注入時(shí),檢測(cè)當(dāng)前設(shè)備運(yùn)行狀態(tài)。標(biāo)識(shí)單元42,用于當(dāng)所述第一檢測(cè)單元41檢測(cè)到所述當(dāng)前設(shè)備發(fā)生故障時(shí),將所述當(dāng)前設(shè)備確定為故障源,并使用故障源標(biāo)識(shí)信息標(biāo)識(shí)所述當(dāng)前設(shè)備,將所述當(dāng)前設(shè)備發(fā)送的故障數(shù)據(jù)確定為故障載體,并使用故障載體標(biāo)識(shí)信息標(biāo)識(shí)所述故障數(shù)據(jù)。生成單元43,用于根據(jù)所述標(biāo)識(shí)單元42確定的所述故障源以及所述故障載體,生成故障路徑信息,以記錄所述故障注入的故障信息??蛇x的是,如圖6所示,所述標(biāo)識(shí)單元42包括檢測(cè)模塊421、刪除模塊422,檢測(cè)模塊421,用于檢測(cè)發(fā)生故障的所述當(dāng)前設(shè)備的運(yùn)行狀態(tài)。修改模塊422,用于當(dāng)所述檢測(cè)模塊421檢測(cè)到發(fā)生故障的所述當(dāng)前設(shè)備的運(yùn)行狀態(tài)轉(zhuǎn)為正常時(shí),將所述當(dāng)前設(shè)備的故障源標(biāo)識(shí)信息修改為正常狀態(tài)。可選的是,如圖7所示,所述生成單元43具體包括獲取模塊431,用于獲取所述故障源對(duì)應(yīng)的故障源節(jié)點(diǎn)信息和所述故障載體對(duì)應(yīng)的故障載體節(jié)點(diǎn)信息。確定模塊432,還用于根據(jù)所述獲取模塊431獲取的所述故障源節(jié)點(diǎn)信息,確定在所述故障路徑信息的多叉樹結(jié)構(gòu)中與所述故障源連接的故障載體;根據(jù)所述獲取模塊431獲取的所述故障載體節(jié)點(diǎn)信息,確定在所述故障路徑信息的多叉樹結(jié)構(gòu)中與所述故障載體連接的故障源。生成模塊433,還用于根據(jù)所述確定模塊432確定的所述當(dāng)前故障源與所述當(dāng)前故障載體之間的連接關(guān)系,生成所述故障路徑信息??蛇x的是,如圖8所示,該裝置還包括創(chuàng)建單元31、獲取故障單元32、故障存儲(chǔ)單元33、注入單元34、第二檢測(cè)單元35、停止檢測(cè)單元36、顯示單元37。創(chuàng)建單元31,用于建立仿真全系統(tǒng),所述仿真全系統(tǒng)用于對(duì)真實(shí)系統(tǒng)進(jìn)行仿真。獲取故障單元32,用于獲取所述創(chuàng)建單元31建立的仿真全系統(tǒng)仿真的真實(shí)系統(tǒng)中存在的真實(shí)故障以及所述仿真全系統(tǒng)中的潛在故障信息。故障存儲(chǔ)單元33,用于將所述獲取故障單元32獲取到的所述真實(shí)故障信息以及所述潛在故障信息按照預(yù)定格式進(jìn)行存儲(chǔ)。注入單元34,用于從所述故障存儲(chǔ)單元33存儲(chǔ)的按照預(yù)定格式存儲(chǔ)的故障信息中選取任意一個(gè)故障信息,進(jìn)行故障注入。第二檢測(cè)單元35,用于檢測(cè)仿真全系統(tǒng)運(yùn)行狀態(tài);以及檢測(cè)所述生成單元生成的 故障路徑信息的深度是否等于預(yù)設(shè)的值。停止檢測(cè)單元36,用于在根據(jù)所述第二檢測(cè)單元35檢測(cè)到所述仿真系統(tǒng)無(wú)法運(yùn)行時(shí),停止檢測(cè)所述當(dāng)前設(shè)備的運(yùn)行狀態(tài);以及根據(jù)所述第二檢測(cè)單元35檢測(cè)到所述故障路徑信息的深度等于預(yù)設(shè)的值時(shí),停止檢測(cè)所述當(dāng)前設(shè)備的運(yùn)行狀態(tài)。顯示單元37,用于顯示故障路徑信息。本發(fā)明實(shí)施例提供的故障跟蹤的方法。在故障注入時(shí),檢測(cè)當(dāng)前設(shè)備的運(yùn)行狀態(tài)。如果檢測(cè)到該設(shè)備發(fā)生故障時(shí),則將這個(gè)設(shè)備標(biāo)記為故障源,并將這個(gè)設(shè)備發(fā)出的故障數(shù)據(jù)標(biāo)記為故障載體,然后根據(jù)故障源和故障載體,生成故障路徑信息。由于現(xiàn)有技術(shù)提供的技術(shù)方案只能記錄故障引發(fā)的現(xiàn)象,而本發(fā)明實(shí)施例的技術(shù)方案,可以檢測(cè)故障行為,記錄故障源和故障載體,并根據(jù)故障源和故障載體生成故障路徑信息,從而能夠詳細(xì)描述故障路徑,用以描述引起故障現(xiàn)象的具體故障行為,相比于現(xiàn)有技術(shù)提供的技術(shù)方案來(lái)說(shuō),能夠更詳細(xì)、完整地檢測(cè)、記錄系統(tǒng)內(nèi)部的故障行為。并且,本發(fā)明實(shí)施例提供的故障跟蹤的方法。構(gòu)建仿真全系統(tǒng),在仿真全系統(tǒng)上進(jìn)行故障注入。構(gòu)建的仿真全系統(tǒng),擁有易修改、可定制的特點(diǎn),從而可以靈活地對(duì)不同系統(tǒng)參數(shù)設(shè)置進(jìn)行配置模擬,分析故障在不同配置下的特征。根據(jù)故障分類,將故障按照預(yù)定格式存儲(chǔ),并按照預(yù)定格式觸發(fā)故障。故障根據(jù)預(yù)定格式存儲(chǔ),可以靈活的設(shè)置預(yù)定格式,配置不同的故障。比如根據(jù)預(yù)定格式可以將故障以多種故障條件描述觸發(fā)。最終可顯示故障路徑信息,從而能夠可以詳細(xì)、完整地記錄更多的故障行為信息。實(shí)施例4本發(fā)明實(shí)施例提供了一種故障跟蹤的裝置,如圖9所示,該裝置包括處理器01、存儲(chǔ)器02。其中,處理器01,用于當(dāng)故障注入時(shí),檢測(cè)當(dāng)前設(shè)備運(yùn)行狀態(tài)。處理器01,當(dāng)檢測(cè)到所述當(dāng)前設(shè)備發(fā)生故障時(shí),將所述當(dāng)前設(shè)備確定為故障源,并使用故障源標(biāo)識(shí)信息標(biāo)識(shí)所述當(dāng)前設(shè)備,將所述當(dāng)前設(shè)備發(fā)送的故障數(shù)據(jù)確定為故障載體,并使用故障載體標(biāo)識(shí)信息標(biāo)識(shí)所述故障數(shù)據(jù)。存儲(chǔ)器02,用于存儲(chǔ)故障源標(biāo)識(shí)信息以及故障載體標(biāo)識(shí)信息。處理器01,用于根據(jù)所述故障源以及所述故障載體,生成故障路徑信息。存儲(chǔ)器02,用于存儲(chǔ)生成的故障路徑信息??蛇x的是,處理器01,用于獲取所述故障源對(duì)應(yīng)的故障源節(jié)點(diǎn)信息和所述故障載體對(duì)應(yīng)的故障載體節(jié)點(diǎn)信息。
存儲(chǔ)器02,用于存儲(chǔ)所述故障源節(jié)點(diǎn)信息和所述故障載體節(jié)點(diǎn)信息。處理器01,還用于根據(jù)所述故障源節(jié)點(diǎn)信息,確定在所述故障路徑信息的多叉樹結(jié)構(gòu)中與故障源連接的故障載體;根據(jù)所述故障載體節(jié)點(diǎn)信息,確定在所述故障路徑信息的多叉樹結(jié)構(gòu)中與故障載體連接的故障源。處理器01,還用于根據(jù)當(dāng)前故障源與故障載體之間的連接關(guān)系,生成所述故障路徑信息,以記錄所述故障注入的故障信息。處理器01,當(dāng)檢測(cè)到發(fā)生故障的所述當(dāng)前設(shè)備運(yùn)行狀態(tài)轉(zhuǎn)為正常時(shí),將所述當(dāng)前設(shè)備的故障源標(biāo)識(shí)信息修改為正常狀態(tài)??蛇x的是,處理器01,還用于檢測(cè)仿真全系統(tǒng)的運(yùn)行狀態(tài)。處理器01,當(dāng)檢測(cè)到所述仿真全系統(tǒng)無(wú)法運(yùn)行或者所述故障路徑信息的深度等于 預(yù)設(shè)的值時(shí),則停止檢測(cè)所述當(dāng)前設(shè)備的運(yùn)行狀態(tài)。存儲(chǔ)器02,用于存儲(chǔ)所述預(yù)設(shè)的值??蛇x的是,處理器01,還用于獲取仿真全系統(tǒng)仿真的真實(shí)系統(tǒng)中存在的真實(shí)故障信息以及所述仿真全系統(tǒng)中的潛在故障信息。存儲(chǔ)器02,用于存儲(chǔ)所述真實(shí)故障信息以及所述潛在故障信息。處理器01,用于將獲取到的所述真實(shí)故障信息以及所述潛在故障信息按照預(yù)定格式進(jìn)行存儲(chǔ)。處理器01,用于從所述按照預(yù)定格式存儲(chǔ)的故障信息中選取任意一個(gè)故障信息,進(jìn)行故障注入。處理器OI,用于顯示故障路徑信息。本發(fā)明實(shí)施例提供的故障跟蹤的方法。在故障注入時(shí),檢測(cè)當(dāng)前設(shè)備的運(yùn)行狀態(tài)。如果檢測(cè)到該設(shè)備發(fā)生故障時(shí),則將這個(gè)設(shè)備標(biāo)記為故障源,并將這個(gè)設(shè)備發(fā)出的故障數(shù)據(jù)標(biāo)記為故障載體,然后根據(jù)故障源和故障載體,生成故障路徑信息。由于現(xiàn)有技術(shù)提供的技術(shù)方案只能記錄故障引發(fā)的現(xiàn)象,而本發(fā)明實(shí)施例的技術(shù)方案,可以檢測(cè)故障行為,記錄故障源和故障載體,并根據(jù)故障源和故障載體生成故障路徑信息,從而能夠詳細(xì)描述故障路徑,用以描述引起故障現(xiàn)象的具體故障行為,相比于現(xiàn)有技術(shù)提供的技術(shù)方案來(lái)說(shuō),能夠更詳細(xì)、完整地檢測(cè)、記錄系統(tǒng)內(nèi)部的故障行為。并且,本發(fā)明實(shí)施例提供的故障跟蹤的方法。構(gòu)建仿真全系統(tǒng),在仿真全系統(tǒng)上進(jìn)行故障注入。構(gòu)建的仿真全系統(tǒng),擁有易修改、可定制的特點(diǎn),從而可以靈活地對(duì)不同系統(tǒng)參數(shù)設(shè)置進(jìn)行配置模擬,分析故障在不同配置下的特征。根據(jù)故障分類,將故障按照預(yù)定格式存儲(chǔ),并按照預(yù)定格式觸發(fā)故障。故障根據(jù)預(yù)定格式存儲(chǔ),可以靈活的設(shè)置預(yù)定格式,配置不同的故障。比如根據(jù)預(yù)定格式可以將故障以多種故障條件描述觸發(fā)。最終可顯示故障路徑信息,從而能夠可以詳細(xì)、完整地記錄更多的故障行為信息。通過(guò)以上的實(shí)施方式的描述,所屬領(lǐng)域的技術(shù)人員可以清楚地了解到本發(fā)明可借助軟件加必需的通用硬件的方式來(lái)實(shí)現(xiàn),當(dāng)然也可以通過(guò)硬件,但很多情況下前者是更佳的實(shí)施方式?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說(shuō)對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來(lái),該計(jì)算機(jī)軟件產(chǎn)品存儲(chǔ)在可讀取的存儲(chǔ)介質(zhì)中,如計(jì)算機(jī)的軟盤,硬盤或光盤等,包括若干指令用以使得一臺(tái)計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個(gè)實(shí)施例所述的方法。
以上所述,僅為本發(fā)明的具體實(shí)施方式
,但本發(fā)明的保護(hù)范圍并不局限于此,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到變化或替換,都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。因此,本發(fā)明的保護(hù)范圍應(yīng)以所述權(quán)利 要求的保護(hù)范圍為準(zhǔn)。
權(quán)利要求
1.一種故障跟蹤的方法,其特征在于,包括;當(dāng)故障注入時(shí),檢測(cè)當(dāng)前設(shè)備運(yùn)行狀態(tài);當(dāng)檢測(cè)到所述當(dāng)前設(shè)備發(fā)生故障時(shí),將所述當(dāng)前設(shè)備確定為故障源,并使用故障源標(biāo)識(shí)信息標(biāo)識(shí)所述當(dāng)前設(shè)備,將所述當(dāng)前設(shè)備發(fā)送的故障數(shù)據(jù)確定為故障載體,并使用故障載體標(biāo)識(shí)信息標(biāo)識(shí)所述故障數(shù)據(jù);根據(jù)所述故障源以及所述故障載體,生成故障路徑信息,以記錄所述故障注入的故障信息。
2.根據(jù)權(quán)利要求I所述的方法,其特征在于,所述故障路徑信息由多叉樹的數(shù)據(jù)結(jié)構(gòu)實(shí)現(xiàn),是根據(jù)所述故障源節(jié)點(diǎn)與所述故障載體節(jié)點(diǎn)之間的對(duì)應(yīng)關(guān)系生成的;其中,所述故障源節(jié)點(diǎn)的父節(jié)點(diǎn)為所述故障源節(jié)點(diǎn)接收到的故障載體對(duì)應(yīng)的故障載體節(jié)點(diǎn),所述故障源節(jié)點(diǎn)的子節(jié)點(diǎn)為所述故障源節(jié)點(diǎn)發(fā)出的故障載體對(duì)應(yīng)的故障載體節(jié)點(diǎn); 所述故障載體節(jié)點(diǎn)的父節(jié)點(diǎn)為發(fā)送所述故障載體的故障源對(duì)應(yīng)的故障源節(jié)點(diǎn),所述故障載體節(jié)點(diǎn)的子節(jié)點(diǎn)為接收所述故障載體的故障源對(duì)應(yīng)的故障源節(jié)點(diǎn)。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述根據(jù)所述故障源以及所述故障載體, 生成故障路徑信息具體包括獲取所述故障源對(duì)應(yīng)的故障源節(jié)點(diǎn)信息和所述故障載體對(duì)應(yīng)的故障載體節(jié)點(diǎn)信息;根據(jù)所述故障源節(jié)點(diǎn)信息,確定在所述故障路徑信息的多叉樹結(jié)構(gòu)中與所述故障源連接的故障載體;根據(jù)所述故障載體節(jié)點(diǎn)信息,確定在所述故障路徑信息的多叉樹結(jié)構(gòu)中與所述故障載體連接的故障源;根據(jù)所述當(dāng)前故障源與所述當(dāng)前故障載體之間的連接關(guān)系,生成所述故障路徑信息, 其中,所述當(dāng)前故障源指所述當(dāng)前設(shè)備,所述當(dāng)前故障載體指所述當(dāng)前設(shè)備發(fā)送的故障數(shù)據(jù)。
4.根據(jù)權(quán)利要求1-3中任意一項(xiàng)所述的方法,其特征在于,在所述使用故障源標(biāo)識(shí)信息標(biāo)識(shí)所述當(dāng)前設(shè)備之后,還包括當(dāng)檢測(cè)到發(fā)生故障的所述當(dāng)前設(shè)備的運(yùn)行狀態(tài)轉(zhuǎn)為正常時(shí),將所述當(dāng)前設(shè)備的故障源標(biāo)識(shí)信息修改為正常狀態(tài)。
5.根據(jù)權(quán)利要求1-4中任意一項(xiàng)所述的方法,其特征在于,還包括檢測(cè)仿真全系統(tǒng)的運(yùn)行狀態(tài);當(dāng)檢測(cè)到所述仿真全系統(tǒng)無(wú)法運(yùn)行或者所述故障路徑信息的深度等于預(yù)設(shè)的值時(shí),則停止檢測(cè)所述當(dāng)前設(shè)備的運(yùn)行狀態(tài)。
6.根據(jù)權(quán)利要求5所述的方法,其特征在于,在所述故障注入之前,還包括獲取仿真全系統(tǒng)仿真的真實(shí)系統(tǒng)中存在的真實(shí)故障信息以及所述仿真全系統(tǒng)中的潛在故障信息;將獲取到的所述真實(shí)故障信息以及所述潛在故障信息按照預(yù)定格式進(jìn)行存儲(chǔ);從所述按照預(yù)定格式存儲(chǔ)的故障信息中選取任意一個(gè)故障信息,進(jìn)行故障注入。
7.根據(jù)權(quán)利要求1-6中任意一項(xiàng)所述的方法,其特征在于,還包括顯示所述故障路徑信息。
8.一種故障跟蹤的裝置,其特征在于,包括第一檢測(cè)單元,用于當(dāng)故障注入時(shí),檢測(cè)當(dāng)前設(shè)備運(yùn)行狀態(tài);標(biāo)識(shí)單元,用于當(dāng)所述第一檢測(cè)單元檢測(cè)到所述當(dāng)前設(shè)備發(fā)生故障時(shí),將所述當(dāng)前設(shè)備確定為故障源,并使用故障源標(biāo)識(shí)信息標(biāo)識(shí)所述當(dāng)前設(shè)備,將所述當(dāng)前設(shè)備發(fā)送的故障數(shù)據(jù)確定為故障載體,并使用故障載體標(biāo)識(shí)信息標(biāo)識(shí)所述故障數(shù)據(jù);生成單元,用于根據(jù)所述標(biāo)識(shí)單元確定的所述故障源以及所述故障載體,生成故障路徑信息,以記錄所述故障注入的故障信息。
9.根據(jù)權(quán)利要求8所述的裝置,其特征在于,所述生成單元生成的故障路徑信息由多叉樹的數(shù)據(jù)結(jié)構(gòu)實(shí)現(xiàn),是根據(jù)所述故障源節(jié)點(diǎn)與所述故障載體節(jié)點(diǎn)之間的對(duì)應(yīng)關(guān)系生成的;其中,所述故障源節(jié)點(diǎn)的父節(jié)點(diǎn)為所述故障源節(jié)點(diǎn)接收到的故障載體對(duì)應(yīng)的故障載體節(jié)點(diǎn),所述故障源節(jié)點(diǎn)的子節(jié)點(diǎn)為所述故障源節(jié)點(diǎn)發(fā)出的故障載體對(duì)應(yīng)的故障載體節(jié)點(diǎn); 所述故障載體節(jié)點(diǎn)的父節(jié)點(diǎn)為發(fā)送所述故障載體的故障源對(duì)應(yīng)的故障源節(jié)點(diǎn),所述故障載體節(jié)點(diǎn)的子節(jié)點(diǎn)為接收所述故障載體的故障源對(duì)應(yīng)的故障源節(jié)點(diǎn)。
10.根據(jù)權(quán)利要求9所述的裝置,其特征在于,所述生成單元包括獲取模塊,用于獲取所述故障源對(duì)應(yīng)的故障源節(jié)點(diǎn)信息和所述故障載體對(duì)應(yīng)的故障載體節(jié)點(diǎn)信息;確定模塊,還用于根據(jù)所述獲取模塊獲取的所述故障源節(jié)點(diǎn)信息,確定在所述故障路徑信息的多叉樹結(jié)構(gòu)中與所述故障源連接的故障載體;根據(jù)所述獲取模塊獲取的所述故障載體節(jié)點(diǎn)信息,確定在所述故障路徑信息的多叉樹結(jié)構(gòu)中與所述故障載體連接的故障源; 生成模塊,還用于根據(jù)所述確定模塊確定的所述當(dāng)前故障源與所述當(dāng)前故障載體之間的連接關(guān)系,生成所述故障路徑信息,所述生成模塊中,所述當(dāng)前故障源指所述當(dāng)前設(shè)備, 所述當(dāng)前故障載體指所述當(dāng)前設(shè)備發(fā)送的故障數(shù)據(jù)。
11.根據(jù)權(quán)利要求8-10中任意一個(gè)所述的裝置,其特征在于,所述標(biāo)識(shí)單元包括檢測(cè)模塊,用于檢測(cè)發(fā)生故障的所述當(dāng)前設(shè)備的運(yùn)行狀態(tài);修改模塊,用于當(dāng)所述檢測(cè)模塊檢測(cè)到發(fā)生故障的所述當(dāng)前設(shè)備的運(yùn)行狀態(tài)轉(zhuǎn)為正常時(shí),將所述當(dāng)前設(shè)備的故障源標(biāo)識(shí)信息修改為正常狀態(tài)。
12.根據(jù)權(quán)利要求8-11中任意一個(gè)所述的裝置,其特征在于,該裝置還包括第二檢測(cè)單元,用于檢測(cè)仿真全系統(tǒng)運(yùn)行狀態(tài);以及檢測(cè)所述生成單元生成的故障路徑信息的深度是否等于預(yù)設(shè)的值;停止檢測(cè)單元,用于在根據(jù)所述第二檢測(cè)單元檢測(cè)到所述仿真全系統(tǒng)無(wú)法運(yùn)行時(shí),停止檢測(cè)所述當(dāng)前設(shè)備的運(yùn)行狀態(tài);根據(jù)所述第二檢測(cè)單元檢測(cè)到所述故障路徑信息的深度等于預(yù)設(shè)的值時(shí),停止檢測(cè)所述當(dāng)前設(shè)備的運(yùn)行狀態(tài)。
13.根據(jù)權(quán)利要求12所述的裝置,其特征在于,該裝置還包括創(chuàng)建單元,用于建立仿真全系統(tǒng);獲取故障單元,用于獲取所述創(chuàng)建單元建立的所述仿真全系統(tǒng)仿真的真實(shí)系統(tǒng)中存在的真實(shí)故障以及所述仿真全系統(tǒng)中的潛在故障信息;故障存儲(chǔ)單元,用于將所述獲取故障單元獲取到的所述真實(shí)故障信息以及所述潛在故障信息按照預(yù)定格式進(jìn)行存儲(chǔ);注入單元,用于從所述故障存儲(chǔ)單元存儲(chǔ)的按照預(yù)定格式存儲(chǔ)的故障信息中選取任意一個(gè)故障信息,進(jìn)行故障注入。
14.根據(jù)權(quán)利要求9-13中任意一個(gè)所述的裝置,其特征在于,該裝置還包括顯示單元,用于顯示故障路徑信息。
全文摘要
本發(fā)明實(shí)施例公開了一種故障跟蹤的方法及裝置,涉及處理器技術(shù)領(lǐng)域,實(shí)現(xiàn)了對(duì)仿真全系統(tǒng)內(nèi)部的故障跟蹤,能夠詳細(xì)地檢測(cè)并記錄故障行為。本發(fā)明的實(shí)施例包括當(dāng)故障注入時(shí),檢測(cè)當(dāng)前設(shè)備運(yùn)行狀態(tài);當(dāng)檢測(cè)到所述當(dāng)前設(shè)備發(fā)生故障時(shí),將所述當(dāng)前設(shè)備確定為故障源,并使用故障源標(biāo)識(shí)信息標(biāo)識(shí)所述當(dāng)前設(shè)備;將所述故障源發(fā)送的故障數(shù)據(jù)確定為故障載體,并使用故障載體標(biāo)識(shí)信息標(biāo)識(shí)所述故障數(shù)據(jù);根據(jù)所述故障源以及所述故障載體,生成故障路徑信息,以記錄所述故障注入的信息。本發(fā)明實(shí)施例主要應(yīng)用于故障跟蹤的流程中。
文檔編號(hào)G06F11/34GK102929729SQ201210334400
公開日2013年2月13日 申請(qǐng)日期2012年9月11日 優(yōu)先權(quán)日2012年9月11日
發(fā)明者張悠慧, 李艷華, 錢自強(qiáng), 鄭偉 申請(qǐng)人:華為技術(shù)有限公司, 清華大學(xué)