專利名稱:一種嵌入式系統(tǒng)的故障修復(fù)方法及設(shè)備的制作方法
技術(shù)領(lǐng)域:
本發(fā)明關(guān)于數(shù)據(jù)通信領(lǐng)域,特別是關(guān)于嵌入式系統(tǒng)中的數(shù)據(jù)通訊技術(shù),具體的講是ー種嵌入式系統(tǒng)的故障修復(fù)方法及設(shè)備。
背景技術(shù):
嵌入式系統(tǒng)以其高效率、低功耗和高可靠性的特點(diǎn),廣泛的應(yīng)用于各個領(lǐng)域。近年來隨著視頻監(jiān)控、會議終端、物聯(lián)網(wǎng)等的重大發(fā)展,嵌入式系統(tǒng)更為普遍地運(yùn)用于實(shí)時變化的外界環(huán)境,并進(jìn)行更加可靠的信息采集、獲取、交互、共享、決策和控制。與此同時,嵌入式系統(tǒng)的主要危害源正日趨復(fù)雜。硬件方面的危害源除了雷電、靜電等自然危害源之外,還包括通信、雷達(dá)、無線識別等射頻干擾源,甚至ー些人為的電磁危 害源。而軟件方面的危害源則包括由各個產(chǎn)品廠家自主研發(fā)的程序和大量的開源軟件,這些軟件之前的資源競爭、相互交互以及內(nèi)部的穩(wěn)定性都會影響到嵌入式系統(tǒng)的穩(wěn)定。然而大部分的嵌入式產(chǎn)品如安防所使用的編解碼器等常常放置在無人值守、較高的地方,并且這些產(chǎn)品相對分散,一旦出現(xiàn)這些嵌入式產(chǎn)品發(fā)生故障無法正常工作的情況吋,將對維修人員的維修工作帶來巨大的困難。如此便造成這些應(yīng)用于通用嵌入式系統(tǒng)的產(chǎn)品故障修復(fù)能力差的問題,難以滿足電子系統(tǒng)在不同層面上的多種安全運(yùn)行要求,且其綜合生存能力降低。現(xiàn)有技術(shù)中的部分嵌入式系統(tǒng)的產(chǎn)品也擁有故障修復(fù)功能,但是這些產(chǎn)品均有如下缺陷部分嵌入式系統(tǒng)的復(fù)雜程度較高,可復(fù)用性低;部分嵌入式系統(tǒng)的算法占用資源較高,對整體的嵌入式系統(tǒng)性能造成影響;部分嵌入式系統(tǒng)的產(chǎn)品對系統(tǒng)要求比較固定,諸如僅限于在Linux或Wince上使用,跨平臺性能差;部分嵌入式系統(tǒng)僅能滿足個別故障問題,對于新出現(xiàn)的故障無法處理,可擴(kuò)展性差。
發(fā)明內(nèi)容
本發(fā)明實(shí)施例提供了ー種嵌入式系統(tǒng)的故障修復(fù)方法及設(shè)備,通過進(jìn)程發(fā)送的故障報告,獲取對應(yīng)的策略,進(jìn)而實(shí)現(xiàn)了對嵌入式系統(tǒng)進(jìn)程中故障的自動修復(fù),極大提高了整個系統(tǒng)的穩(wěn)定性,增強(qiáng)了用戶體驗(yàn)。本發(fā)明的目的之ー是,提供ー種嵌入式系統(tǒng)的故障修復(fù)方法,所述的方法包括接收嵌入式系統(tǒng)中的進(jìn)程發(fā)送的故障報告;解析所述的故障報告得到當(dāng)前故障報告對應(yīng)的故障類型;根據(jù)所述的故障類型在預(yù)先存儲的故障表中獲取與所述的故障類型對應(yīng)的策略類型;根據(jù)所述的策略類型在預(yù)先存儲的策略表中獲取與所述的策略類型對應(yīng)的策略;執(zhí)行所述的策略以修復(fù)與所述的故障報告對應(yīng)的故障。本發(fā)明的目的之ー是,提供ー種嵌入式系統(tǒng)的故障修復(fù)設(shè)備,所述的設(shè)備包括故障報告接收模塊,用于接收嵌入式系統(tǒng)中的進(jìn)程發(fā)送的故障報告;解析模塊,用于解析所述的故障報告得到當(dāng)前故障報告對應(yīng)的故障類型;策略類型獲取模塊,用于根據(jù)所述的故障類型在預(yù)先存儲的故障表中獲取與所述的故障類型對應(yīng)的策略類型;策略獲取模塊,用于根據(jù)所述的策略類型在預(yù)先存儲的策略表中獲取與所述的策略類型對應(yīng)的策略;策略執(zhí)行模塊,用于執(zhí)行所述的策略以修復(fù)與所述的故障報告對應(yīng)的故障。本發(fā)明的有益效果在于,實(shí)現(xiàn)了對嵌入式系統(tǒng)故障的自動無縫修復(fù),且整個系統(tǒng)的復(fù)雜程度低,便于使用者理解,有利于推廣和二次開發(fā),對系統(tǒng)硬件的配置需求較低,僅需組成ー個基本嵌入式系統(tǒng)的硬件結(jié)構(gòu)即可,且系統(tǒng)運(yùn)行占用的系統(tǒng)資源較少,不會對嵌入式系統(tǒng)的整體性能產(chǎn)生影響。此外,由于本發(fā)明沒有依賴固定的系統(tǒng)函數(shù)庫,在任意的嵌入式系統(tǒng)上均可使用,還實(shí)現(xiàn)了對系統(tǒng)新出現(xiàn)的故障的修復(fù),并通過將該種處理方式向其他同類產(chǎn)品進(jìn)行傳送,實(shí)現(xiàn)了其他的產(chǎn)品對該故障的修復(fù)。
為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。圖I為本發(fā)明實(shí)施例提供的ー種嵌入式系統(tǒng)的故障修復(fù)方法的流程圖;圖2為本發(fā)明實(shí)施例提供的ー種嵌入式系統(tǒng)的故障修復(fù)方法中S103的具體流程圖;圖3為本發(fā)明實(shí)施例提供的ー種嵌入式系統(tǒng)的故障修復(fù)方法中S105的具體流程圖;圖4為本發(fā)明實(shí)施例提供的ー種嵌入式系統(tǒng)的故障修復(fù)方法的具體實(shí)施例的流程圖;圖5為本發(fā)明實(shí)施例提供的ー種嵌入式系統(tǒng)的故障修復(fù)設(shè)備中故障表、策略表以及對應(yīng)關(guān)系的不例圖;圖6為本發(fā)明實(shí)施例提供的ー種嵌入式系統(tǒng)的故障修復(fù)設(shè)備之間的交互圖;圖7為本發(fā)明實(shí)施例提供的ー種嵌入式系統(tǒng)的故障修復(fù)設(shè)備的結(jié)構(gòu)框圖;圖8為本發(fā)明實(shí)施例提供的ー種嵌入式系統(tǒng)的故障修復(fù)設(shè)備的實(shí)施方式ニ的結(jié)構(gòu)框圖;圖9為本發(fā)明實(shí)施例提供的ー種嵌入式系統(tǒng)的故障修復(fù)設(shè)備的實(shí)施方式三的結(jié)構(gòu)框圖;圖10為本發(fā)明實(shí)施例提供的ー種嵌入式系統(tǒng)的故障修復(fù)設(shè)備的實(shí)施方式四的結(jié)構(gòu)框圖。
具體實(shí)施例方式下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實(shí)施例, 都屬于本發(fā)明保護(hù)的范圍。圖I為本發(fā)明實(shí)施例提供的ー種嵌入式系統(tǒng)的故障修復(fù)方法的流程圖,由圖I可知,所述的方法包括
SlOl :接收嵌入式系統(tǒng)中的進(jìn)程發(fā)送的故障報告。S102 :解析所述的故障報告得到當(dāng)前故障報告對應(yīng)的故障類型。每個進(jìn)程發(fā)送的故障報告中均包含對應(yīng)的故障類型,故障類型與故障報告一一對應(yīng)。S103:根據(jù)所述的故障類型在預(yù)先存儲的故障表中獲取與所述的故障類型對應(yīng)的策略類型。圖5為本發(fā)明實(shí)施例提供的ー種嵌入式系統(tǒng)的故障修復(fù)設(shè)備中故障表、策略表以及對應(yīng)關(guān)系的示例圖,由圖5可知,嵌入式系統(tǒng)中預(yù)先存儲了各個進(jìn)程對應(yīng)的故障表、策略表以及對應(yīng)關(guān)系,其中故障表中存儲了嵌入式系統(tǒng)中的各個進(jìn)程的常見故障類型以及各個故障類型對應(yīng)的策略類型。策略表中存儲了各個策略以及與策略一一對應(yīng)的策略類型,如此方可實(shí)現(xiàn)根據(jù)不同的策略類型查詢對應(yīng)的策略。策略中記錄了嵌入式系統(tǒng)可以通過哪些方式來處理故障,策略表中的處理策略是需要預(yù)先定義好的,這些故障處理方式根據(jù)不同 的嵌入式系統(tǒng)而不同。除此之外,策略表中所記錄的策略按照優(yōu)先級由高到低排列,將對系統(tǒng)影響最小的處理方式定為優(yōu)先級最高的策略,以此類推。圖2為本發(fā)明實(shí)施例提供的ー種嵌入式系統(tǒng)的故障修復(fù)方法中S103的具體流程圖,由圖2可知,該步驟具體包括S201 :根據(jù)所述的故障類型在預(yù)先存儲的故障表中進(jìn)行搜索;S202 :判斷步驟S201的搜索結(jié)果是否為空,當(dāng)判斷為是時,執(zhí)行步驟S204,否則執(zhí)行步驟S203 ;S203 :輸出所述的搜索結(jié)果包含的與所述的故障類型對應(yīng)的策略類型。捜索結(jié)果中的策略類型對應(yīng)的策略即為修復(fù)當(dāng)前故障的處理方式。S204 :輸出預(yù)先存儲的策略表中所有策略對應(yīng)的策略類型。也即當(dāng)前故障在故障表中無記錄,預(yù)先存儲的故障表中未包含當(dāng)前故障,此時搜索結(jié)果中的策略類型為策略表中的所有策略對應(yīng)的策略類型。S104 :根據(jù)所述的策略類型在預(yù)先存儲的策略表中獲取與所述的策略類型對應(yīng)的策略。對于步驟S203,獲取的策略即為修復(fù)當(dāng)前故障的策略。對于步驟S204,獲取的策略即為嵌入式系統(tǒng)中的策略表中的所有策略。S105 :執(zhí)行所述的策略以修復(fù)與所述的故障報告對應(yīng)的故障。圖3為當(dāng)根據(jù)所述的故障類型在預(yù)先存儲的故障表中進(jìn)行搜索的結(jié)果為空吋,S105的具體流程圖,由圖3可知,該步驟具體包括S301 :判斷搜索結(jié)果是否為空,當(dāng)搜索結(jié)果為空時,執(zhí)行步驟S302 ;S302 :按照策略優(yōu)先級由高到低的順序順次執(zhí)行ー個策略。執(zhí)行的第一個策略即為策略表中優(yōu)先級最高的策略。S303 :所述的ー個策略執(zhí)行結(jié)束后,判斷所述的進(jìn)程是否正常運(yùn)行。即判斷執(zhí)行完第一個策略后,進(jìn)程的故障是否得到修復(fù),當(dāng)運(yùn)行正常后,執(zhí)行步驟S306,否則執(zhí)行步驟S304 ;S304 :判斷當(dāng)前的策略是否為策略表中的最后ー個策略,當(dāng)判斷為否時,返回執(zhí)行步驟S302,否則執(zhí)行步驟S205 ;
S305 :將所述的故障報告存儲在日志報告中。日常報告中的故障可后續(xù)由技術(shù)人員專門進(jìn)行針對性研究,探尋對應(yīng)的處理策略。
S306 :將所述的故障類型與當(dāng)前的策略對應(yīng)的策略類型存儲在所述的故障表中。存儲后,當(dāng)前進(jìn)程后續(xù)出現(xiàn)當(dāng)前故障吋,即可在故障表中捜索到對應(yīng)的策略類型,實(shí)時進(jìn)行運(yùn)行對應(yīng)的策略以修復(fù)該故障。S307 :將所述的故障類型與當(dāng)前的策略對應(yīng)的策略類型通過UDP協(xié)議傳送至其他嵌入式系統(tǒng)。如此,其他的嵌入式系統(tǒng)接收到該故障報告吋,即可執(zhí)行對應(yīng)的策略以修復(fù)該故障。圖6為本發(fā)明實(shí)施例提供的ー種嵌入式系統(tǒng)的故障修復(fù)設(shè)備之間的交互圖,由圖6可知,嵌入式系統(tǒng)之間可通過UDP協(xié)議進(jìn)行交互。本發(fā)明提供的ー種嵌入式系統(tǒng)的故障修復(fù)方法除了上述步驟之外,還包括在嵌入式系統(tǒng)中設(shè)置看門狗。通過不斷的更新看門狗(喂狗)來確定整個系統(tǒng)的穩(wěn)定性,當(dāng)嵌入式系統(tǒng)的硬件出現(xiàn)故障導(dǎo)致整個系統(tǒng)無法正常運(yùn)行或故障修復(fù)設(shè)備本身出現(xiàn)了故障時,故障修復(fù)設(shè)備將無法正常更新看門狗(喂狗),看門狗芯片會將整個硬件進(jìn)行復(fù)位。圖7為本發(fā)明實(shí)施例提供的ー種嵌入式系統(tǒng)的故障修復(fù)設(shè)備的結(jié)構(gòu)框圖,由圖7 可知,所述的設(shè)備200包括故障報告接收模塊201,用于接收嵌入式系統(tǒng)中的進(jìn)程發(fā)送的故障報告;解析模塊202,用于解析所述的故障報告得到當(dāng)前故障報告對應(yīng)的故障類型。每個進(jìn)程發(fā)送的故障報告中均包含對應(yīng)的故障類型,故障類型與故障報告一一對應(yīng)。策略類型獲取模塊203,用于根據(jù)所述的故障類型在預(yù)先存儲的故障表中獲取與所述的故障類型對應(yīng)的策略類型。圖5為本發(fā)明實(shí)施例提供的ー種嵌入式系統(tǒng)的故障修復(fù)設(shè)備中故障表、策略表以及對應(yīng)關(guān)系的示例圖,由圖5可知,嵌入式系統(tǒng)中預(yù)先存儲了各個進(jìn)程對應(yīng)的故障表、策略表以及對應(yīng)關(guān)系,其中故障表中存儲了嵌入式系統(tǒng)中的各個進(jìn)程的常見故障類型以及各個故障類型對應(yīng)的策略類型。策略表中存儲了各個策略以及與策略一一對應(yīng)的策略類型,如此方可實(shí)現(xiàn)根據(jù)不同的策略類型查詢對應(yīng)的策略。策略中記錄了嵌入式系統(tǒng)可以通過哪些方式來處理故障,策略表中的處理策略是需要預(yù)先定義好的,這些故障處理方式根據(jù)不同的嵌入式系統(tǒng)而不同。除此之外,策略表中所記錄的策略按照優(yōu)先級由高到低排列,將對系統(tǒng)影響最小的處理方式定為優(yōu)先級最高的策略,以此類推。圖8為本發(fā)明實(shí)施例提供的ー種嵌入式系統(tǒng)的故障修復(fù)設(shè)備的實(shí)施方式ニ的結(jié)構(gòu)框圖,由圖8可知,所述的策略類型獲取模塊203具體包括搜索單元2031,用于根據(jù)所述的故障類型在預(yù)先存儲的故障表中進(jìn)行搜索;第一策略類型輸出単元2032,用于當(dāng)搜索結(jié)果不為空時,輸出所述的搜索結(jié)果包含的與所述的故障類型對應(yīng)的策略類型,捜索結(jié)果中的策略類型對應(yīng)的策略即為修復(fù)當(dāng)前故障的處理方式。第二策略類型輸出単元2033,用于當(dāng)搜索結(jié)果為空吋,輸出預(yù)先存儲的策略表中所有策略對應(yīng)的策略類型。也即當(dāng)前故障在故障表中無記錄,預(yù)先存儲的故障表中未包含當(dāng)前故障,此時搜索結(jié)果中的策略類型為策略表中的所有策略對應(yīng)的策略類型。策略獲取模塊204,用于根據(jù)所述的策略類型在預(yù)先存儲的策略表中獲取與所述的策略類型對應(yīng)的策略。對于第一策略類型輸出單元2032,獲取的策略即為修復(fù)當(dāng)前故障的策略。對于第二策略類型輸出単元2033,獲取的策略即為嵌入式系統(tǒng)中的策略表中的所有策略。
策略執(zhí)行模塊205,用于執(zhí)行所述的策略以修復(fù)與所述的故障報告對應(yīng)的故障。圖9為本發(fā)明實(shí)施例提供的ー種嵌入式系統(tǒng)的故障修復(fù)設(shè)備的實(shí)施方式三的結(jié)構(gòu)框圖,由圖9可知,當(dāng)根據(jù)所述的故障類型在預(yù)先存儲的故障表中進(jìn)行搜索的結(jié)果為空時,所述的策略執(zhí)行模塊205包括第一策略執(zhí)行單元2051,用于當(dāng)搜索結(jié)果為空時,按照策略優(yōu)先級由高到低的順序順次執(zhí)行ー個策略,執(zhí)行的第一個策略即為策略表中優(yōu)先級最高的策略。判斷単元2052,用于當(dāng)所述的第一策略執(zhí)行單元運(yùn)行結(jié)束后,判斷所述的進(jìn)程是否正常運(yùn)行,即判斷執(zhí)行完第一個策略后,進(jìn)程的故障是否得到修復(fù)。第一存儲單元2053,用于當(dāng)所述的進(jìn)程正常運(yùn)行時,將所述的故障類型與當(dāng)前的策略對應(yīng)的策略類型存儲在所述的故障表中,存儲后,當(dāng)前進(jìn)程后續(xù)出現(xiàn)當(dāng)前故障時,即可在故障表中捜索到對應(yīng)的策略類型,實(shí)時進(jìn)行運(yùn)行對應(yīng)的策略以修復(fù)該故障。第二執(zhí)行單元2054,用于當(dāng)所述的進(jìn)程運(yùn)行故障時,按照策略優(yōu)先級從高到低的順序執(zhí)行下ー個策略。圖10為本發(fā)明實(shí)施例提供的ー種嵌入式系統(tǒng)的故障修復(fù)設(shè)備的實(shí)施方式四的結(jié)構(gòu)框圖,由圖10可知,所述的設(shè)備還包括傳送單元206,用于當(dāng)搜索結(jié)果為空且所述的進(jìn)程正常運(yùn)行時,將所述的故障類型與當(dāng)前的策略對應(yīng)的策略類型通過UDP協(xié)議傳送至其他嵌入式系統(tǒng)。如此,其他的嵌入式系統(tǒng)接收到該故障報告吋,即可執(zhí)行對應(yīng)的策略以修復(fù)該故障。圖6為本發(fā)明實(shí)施例提供的ー種嵌入式系統(tǒng)的故障修復(fù)設(shè)備之間的交互圖,由圖6可知,嵌入式系統(tǒng)之間可通過UDP協(xié)議進(jìn)行交互。第二存儲單元207,用于當(dāng)執(zhí)行完預(yù)先存儲的策略表中的所有策略,所述的進(jìn)程運(yùn)行故障吋,將所述的故障報告存儲在日志報告中。日常報告中的故障可后續(xù)由技術(shù)人員專門進(jìn)行針對性研究,探尋對應(yīng)的處理策略。所述的設(shè)備還包括看門狗208。通過不斷的更新看門狗(喂狗)來確定整個系統(tǒng)的穩(wěn)定性,當(dāng)嵌入式系統(tǒng)的硬件出現(xiàn)故障導(dǎo)致整個系統(tǒng)無法正常運(yùn)行或故障修復(fù)設(shè)備本身出現(xiàn)了故障時,故障修復(fù)設(shè)備將無法正常更新看門狗(喂狗),看門狗芯片會將整個硬件進(jìn)行復(fù)位。如圖4所示的本發(fā)明的ー種嵌入式系統(tǒng)的故障修復(fù)方法、設(shè)備的具體實(shí)施例中,具體包括S401 :啟動看門狗線程。為了保證對整個系統(tǒng)中所有進(jìn)程故障的完整收集,嵌入式系統(tǒng)啟動后優(yōu)先創(chuàng)建看門狗線程。S402 :對看門狗進(jìn)行初始化,使看門狗開始工作。S403 :更新看門狗操作(即喂狗)。S404 :休眠預(yù)定時間后返回執(zhí)行步驟S403。休眠時間可根據(jù)不同的設(shè)備預(yù)先設(shè)定。S405 :初始化網(wǎng)絡(luò)資源。在該實(shí)施例中,初始化生成UDP Server和UDPClient,嵌入式系統(tǒng)中的各個進(jìn)程通過各自的UDP Client發(fā)送故障報告。UDPServer接收故障報告。S406 :在UDP Server上阻塞式監(jiān)聽UDP Client的連接。S407 UDP Client連接完成后,UDP Server接收UDP Client發(fā)送的故障報告。 S408:接收到故障報告后,根據(jù)故障表判斷當(dāng)前故障是否為已知故障,如果是已知故障則執(zhí)行步驟S415,否則執(zhí)行步驟S409 ;S409 :當(dāng)接收的故障為未知故障時,將處理指針指向策略表中優(yōu)先級最高的策略;S410 :執(zhí)行指定的策略;S411 :判斷當(dāng)前進(jìn)程的故障是否得到修復(fù),當(dāng)判斷為是時,執(zhí)行步驟S416,否則執(zhí)行步驟S412 ;S412:判斷當(dāng)前策略是否為 策略表中的最后ー個策略即判斷指針是否指示到策略表的尾部,當(dāng)判斷為是時,執(zhí)行步驟S413,否則執(zhí)行步驟S414 ;S413 :將該故障記錄在日志中,以便研發(fā)人員調(diào)試。S414 :指針移動到下一優(yōu)先級的策略中,返回執(zhí)行步驟S414 ;S415:直接按照該故障對應(yīng)策略修復(fù)故障。執(zhí)行結(jié)束后斷開網(wǎng)絡(luò)連接,對不用的資源進(jìn)行釋放。S416 :將該故障添加到故障表,并將該故障與修復(fù)故障的策略綁定;S417 :通過故障修復(fù)設(shè)備創(chuàng)建的UDP Client向網(wǎng)絡(luò)廣播該故障與其處理策略。下面以在TI DM6467平臺上的一款音視頻編解碼器為例,具體介紹本發(fā)明實(shí)施例提供的ー種嵌入式系統(tǒng)的故障修復(fù)方法及設(shè)備。此音視頻編解碼的嵌入式硬件環(huán)境如下 主處理器為ARM926EJ-S的處理器,主頻為297MHz。協(xié)處理器為C64x+,主頻為594MZ。
DDR 主頻為 297MHz。此音視頻編解碼的嵌入式軟件環(huán)境如下 操作系統(tǒng)采用 Linux 2. 6. 18。 自身文件系統(tǒng)為YAFFS2。由于音視頻編解碼器通常放置無人值守的地方,故對自我修復(fù)要求相對較高。系統(tǒng)中存在高清編碼進(jìn)程、標(biāo)清編碼進(jìn)程、高清解碼進(jìn)程、標(biāo)清解碼進(jìn)程、業(yè)務(wù)轉(zhuǎn)換進(jìn)程、升級進(jìn)程、還有大量的Shell腳本程序,這些進(jìn)程在自身運(yùn)行時都會將故障報告發(fā)送給故障修復(fù)設(shè)備。由音視頻編碼器的運(yùn)行反饋可知,使用本發(fā)明提供的故障修復(fù)設(shè)備的已知故障修復(fù)率可達(dá)到100%,未知故障的修復(fù)率可達(dá)到97%,且本發(fā)明對CPU的占用情況小于0. 2%,對RAM的占用小于0. 15%。綜上所述,本發(fā)明的有益成果是提供了ー種嵌入式系統(tǒng)的故障修復(fù)方法及設(shè)備,實(shí)現(xiàn)了對嵌入式系統(tǒng)進(jìn)程中故障的自動無縫修復(fù),極大提高了整個系統(tǒng)的穩(wěn)定性,增強(qiáng)了用戶體驗(yàn)。本發(fā)明的優(yōu)點(diǎn)是I、創(chuàng)造性地解析進(jìn)程發(fā)送的故障報告,根據(jù)解析得到的故障類型在預(yù)先存儲的故障表中獲取對應(yīng)的策略類型,進(jìn)而執(zhí)行策略類型對應(yīng)的策略以修復(fù)當(dāng)前進(jìn)程的故障,實(shí)現(xiàn)了對嵌入式系統(tǒng)故障的自動無縫修復(fù),且整個系統(tǒng)的復(fù)雜程度低,便于使用者理解,有利于推廣和二次開發(fā)。2、本發(fā)明提供的方案對系統(tǒng)硬件的配置需求較低,僅需組成ー個基本嵌入式系統(tǒng)的硬件結(jié)構(gòu)即可,且系統(tǒng)運(yùn)行占用的系統(tǒng)資源較少,不會對嵌入式系統(tǒng)的整體性能產(chǎn)生影響。此外,由于本發(fā)明沒有依賴固定的系統(tǒng)函數(shù)庫,在任意的嵌入式系統(tǒng)上均可使用。3、本發(fā)明對故障的處理可實(shí)現(xiàn)對硬件故障和軟件故障的雙重修復(fù),還實(shí)現(xiàn)了對系統(tǒng)新出現(xiàn)的故障的修復(fù),并通過將該種處理方式向其他同類產(chǎn)品進(jìn)行傳送,實(shí)現(xiàn)了其他的產(chǎn)品對該故障的修復(fù)。 本發(fā)明中應(yīng)用了具體實(shí)施例對本發(fā)明的原理及實(shí)施方式進(jìn)行了闡述,以上實(shí)施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想;同時,對于本領(lǐng)域的一般技術(shù)人員,依據(jù)本發(fā)明的思想,在具體實(shí)施方式
及應(yīng)用范圍上均會有改變之處,綜上所述,本說明書內(nèi)容不應(yīng)理解為對本發(fā)明的限制。
權(quán)利要求
1.一種嵌入式系統(tǒng)的故障修復(fù)方法,其特征是,所述的方法包括 接收嵌入式系統(tǒng)中的進(jìn)程發(fā)送的故障報告; 解析所述的故障報告得到當(dāng)前故障報告對應(yīng)的故障類型; 根據(jù)所述的故障類型在預(yù)先存儲的故障表中獲取與所述的故障類型對應(yīng)的策略類型; 根據(jù)所述的策略類型在預(yù)先存儲的策略表中獲取與所述的策略類型對應(yīng)的策略; 執(zhí)行所述的策略以修復(fù)與所述的故障報告對應(yīng)的故障。
2.根據(jù)權(quán)利要求I所述的方法,其特征是,根據(jù)所述的故障類型在預(yù)先存儲的故障表中獲取與所述的故障類型對應(yīng)的策略類型具體包括 根據(jù)所述的故障類型在預(yù)先存儲的故障表中進(jìn)行搜索; 當(dāng)搜索結(jié)果不為空時,輸出所述的搜索結(jié)果包含的與所述的故障類型對應(yīng)的策略類型; 當(dāng)搜索結(jié)果為空時,輸出預(yù)先存儲的策略表中所有策略對應(yīng)的策略類型。
3.根據(jù)權(quán)利要求2所述的方法,其特征是,在所述的預(yù)先存儲的策略表中,策略按照優(yōu)先級由高到低排列。
4.根據(jù)權(quán)利要求3所述的方法,其特征是,執(zhí)行所述的策略以修復(fù)與所述的故障報告對應(yīng)的故障包括 當(dāng)搜索結(jié)果為空時,按照策略優(yōu)先級由高到低的順序順次執(zhí)行一個策略; 所述的一個策略執(zhí)行結(jié)束后,判斷所述的進(jìn)程是否正常運(yùn)行; 當(dāng)所述的進(jìn)程正常運(yùn)行時,將所述的故障類型與當(dāng)前的策略對應(yīng)的策略類型存儲在所述的故障表中; 當(dāng)所述的進(jìn)程運(yùn)行故障時,按照策略優(yōu)先級從高到低的順序執(zhí)行下一個策略。
5.根據(jù)權(quán)利要求4所述的方法,其特征是,當(dāng)搜索結(jié)果為空且所述的進(jìn)程正常運(yùn)行時,將所述的故障類型與當(dāng)前的策略對應(yīng)的策略類型通過UDP協(xié)議傳送至其他嵌入式系統(tǒng)。
6.根據(jù)權(quán)利要求4所述的方法,其特征是,當(dāng)執(zhí)行完預(yù)先存儲的策略表中的所有策略,所述的進(jìn)程運(yùn)行故障時,將所述的故障報告存儲在日志報告中。
7.根據(jù)權(quán)利要求1-6任意一項(xiàng)所述的方法,其特征是,所述的方法還包括在嵌入式系統(tǒng)中設(shè)置看門狗。
8.一種嵌入式系統(tǒng)的故障修復(fù)設(shè)備,其特征是,所述的設(shè)備包括 故障報告接收模塊,用于接收嵌入式系統(tǒng)中的進(jìn)程發(fā)送的故障報告; 解析模塊,用于解析所述的故障報告得到當(dāng)前故障報告對應(yīng)的故障類型; 策略類型獲取模塊,用于根據(jù)所述的故障類型在預(yù)先存儲的故障表中獲取與所述的故障類型對應(yīng)的策略類型; 策略獲取模塊,用于根據(jù)所述的策略類型在預(yù)先存儲的策略表中獲取與所述的策略類型對應(yīng)的策略; 策略執(zhí)行模塊,用于執(zhí)行所述的策略以修復(fù)與所述的故障報告對應(yīng)的故障。
9.根據(jù)權(quán)利要求8所述的設(shè)備,其特征是,所述的策略類型獲取模塊具體包括 搜索單元,用于根據(jù)所述的故障類型在預(yù)先存儲的故障表中進(jìn)行搜索; 第一策略類型輸出單元,用于當(dāng)搜索結(jié)果不為空時,輸出所述的搜索結(jié)果包含的與所述的故障類型對應(yīng)的策略類型; 第二策略類型輸出單元,用于當(dāng)搜索結(jié)果為空時,輸出預(yù)先存儲的策略表中所有策略對應(yīng)的策略類型。
10.根據(jù)權(quán)利要求9所述的設(shè)備,其特征是,在所述的預(yù)先存儲的策略表中,策略按照優(yōu)先級由高到低排列。
11.根據(jù)權(quán)利要求10所述的設(shè)備,其特征是,所述的策略執(zhí)行模塊包括 第一策略執(zhí)行單元,用于當(dāng)搜索結(jié)果為空時,按照策略優(yōu)先級由高到低的順序順次執(zhí)行一個策略; 判斷單元,用于當(dāng)所述的第一策略執(zhí)行單元運(yùn)行結(jié)束后,判斷所述的進(jìn)程是否正常運(yùn)行; 第一存儲單元,用于當(dāng)所述的進(jìn)程正常運(yùn)行時,將所述的故障類型與當(dāng)前的策略對應(yīng)的策略類型存儲在所述的故障表中; 第二執(zhí)行單元,用于當(dāng)所述的進(jìn)程運(yùn)行故障時,按照策略優(yōu)先級從高到低的順序執(zhí)行下一個策略。
12.根據(jù)權(quán)利要求11所述的設(shè)備,其特征是,所述的設(shè)備還包括傳送單元,用于當(dāng)搜索結(jié)果為空且所述的進(jìn)程正常運(yùn)行時,將所述的故障類型與當(dāng)前的策略對應(yīng)的策略類型通過UDP協(xié)議傳送至其他嵌入式系統(tǒng)。
13.根據(jù)權(quán)利要求12所述的設(shè)備,其特征是,所述的設(shè)備還包括第二存儲單元,用于當(dāng)執(zhí)行完預(yù)先存儲的策略表中的所有策略,所述的進(jìn)程運(yùn)行故障時,將所述的故障報告存儲在日志報告中。
14.根據(jù)權(quán)利要求8-13任意一項(xiàng)所述的設(shè)備,其特征是,所述的設(shè)備還包括看門狗。
全文摘要
本發(fā)明實(shí)施例提供了一種嵌入式系統(tǒng)的故障修復(fù)方法及設(shè)備,所述的方法包括接收嵌入式系統(tǒng)中的進(jìn)程發(fā)送的故障報告;解析所述的故障報告得到當(dāng)前故障報告對應(yīng)的故障類型;根據(jù)所述的故障類型在預(yù)先存儲的故障表中獲取與所述的故障類型對應(yīng)的策略類型;根據(jù)所述的策略類型在預(yù)先存儲的策略表中獲取與所述的策略類型對應(yīng)的策略;執(zhí)行所述的策略以修復(fù)與所述的故障報告對應(yīng)的故障。通過進(jìn)程發(fā)送的故障報告,獲取對應(yīng)的策略,進(jìn)而實(shí)現(xiàn)了對嵌入式系統(tǒng)進(jìn)程中故障的自動無縫修復(fù),極大提高了整個系統(tǒng)的穩(wěn)定性,增強(qiáng)了用戶體驗(yàn)。
文檔編號G06F11/07GK102662784SQ201210106929
公開日2012年9月12日 申請日期2012年4月12日 優(yōu)先權(quán)日2012年4月12日
發(fā)明者劉衛(wèi)國, 單衍景, 王偉鴻, 謝泳江, 賈瑞明 申請人:北京華夏電通科技股份有限公司