[發(fā)明專利]一種實時嵌入系統(tǒng)的故障定位方法無效
| 申請?zhí)枺?/td> | 01123077.0 | 申請日: | 2001-07-30 |
| 公開(公告)號: | CN1400529A | 公開(公告)日: | 2003-03-05 |
| 發(fā)明(設(shè)計)人: | 利文勁;張宇昕 | 申請(專利權(quán))人: | 華為技術(shù)有限公司 |
| 主分類號: | G06F11/30 | 分類號: | G06F11/30 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 518057 廣東省深*** | 國省代碼: | 廣東;44 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 實時 嵌入 系統(tǒng) 故障 定位 方法 | ||
一、技術(shù)領(lǐng)域:
本發(fā)明涉及計算機通信領(lǐng)域,尤其涉及一種實時嵌入系統(tǒng)中的故障定位方法。
二、背景技術(shù):
在現(xiàn)有的實時嵌入系統(tǒng)中,通常使用“看門狗”監(jiān)控系統(tǒng)的運行狀態(tài),防止系統(tǒng)長期處于故障狀態(tài),無法運行。從原理上講看門狗是一個計數(shù)器(一般而言是個減法計數(shù)器),由外部時鐘驅(qū)動,每隔一定的時間間隔就會減1,直到計數(shù)器為0時就超時。啟動看門狗時,在看門狗的計數(shù)器里設(shè)置了一個初始值,此后每一定時間間隔減1,當計數(shù)器的值減到0時,看門狗就會產(chǎn)生信號,通知系統(tǒng)超時。如果在看門狗超時前對看門狗的計數(shù)器進行一次設(shè)置,看門狗的計數(shù)器就會恢復(fù)初值,重新開始計數(shù)。
根據(jù)看門狗的物理構(gòu)造的不同以及產(chǎn)生信號的不同,可以將看門狗分為硬件看門狗和軟件看門狗。
在實際應(yīng)用中,硬看門狗通常是一個獨立于CPU之外的硬件器件,由獨立的時鐘驅(qū)動,硬看門狗的計數(shù)器的初始值以及外部時鐘驅(qū)動頻率由器件本身決定了,外部無法更改。硬看門狗的輸出信號管腳與CPU的RESET管腳相連。CPU通過一個引腳將重置計數(shù)器的信號送到硬看門狗上,使得硬看門狗重新計數(shù)而不超時。系統(tǒng)正常運行時軟件系統(tǒng)定時從這個引腳輸出信號重置硬看門狗的定時器,而一旦系統(tǒng)出現(xiàn)故障,軟件不能正常運行,硬看門狗得不到重置的信號,超時以后,硬看門狗就會從輸出管腳輸出一個低電平給CPU的RESET管腳,引起CPU復(fù)位,系統(tǒng)重新初始化,這樣就避免了嚴重的錯誤導(dǎo)致軟件系統(tǒng)不能正確運行,但是又無法恢復(fù),系統(tǒng)“死掉”。
軟看門狗實際上是高檔處理器內(nèi)置的一個計數(shù)器,其時鐘驅(qū)動頻率由處理器決定(有的可以由軟件設(shè)定),而計數(shù)器的初值由軟件設(shè)定,因而超時時間大小可以在一定范圍內(nèi)變化。軟看門狗也需要定時重置計數(shù)器以防止超時(通常稱為“清狗操作”)。當軟看門狗超時時,由于軟看門狗位于處理器內(nèi)部,一般都是產(chǎn)生內(nèi)部由CPU可以識別的信號,通常是中斷(或稱異常[Exception]),不經(jīng)過特殊處理,不能直接引起軟件系統(tǒng)重起。
三、發(fā)明內(nèi)容:
目前的系統(tǒng),對類似的問題只能采取引起CPU復(fù)位的方式,使系統(tǒng)重新初始化,這樣可以避免系統(tǒng)“死掉”,但對于分析故障的各種數(shù)據(jù)沒有有效的輸出和相應(yīng)的分析,而對于故障發(fā)生時的現(xiàn)場數(shù)據(jù),往往是系統(tǒng)復(fù)位前的重要信息,是定位復(fù)位原因的重要線索,問題實際上沒有得到解決。
本發(fā)明就是要充分利用軟看門狗的特點,在軟看門狗復(fù)位時保存現(xiàn)場信息,提供一種比較強大的故障定位方法。
本發(fā)明的目的是這樣實現(xiàn)的:一種實時嵌入系統(tǒng)的故障定位方法,外部環(huán)境為帶有軟看門狗的CPU,其特征在于包括如下步驟:a、軟看門狗初始化,設(shè)置一個計數(shù)器初始值和時鐘頻率以及一個程序定時值,該程序定時值小于該計數(shù)器的初始值;b、計數(shù)器開始計數(shù),初始值和程序定時值開始減少;c、經(jīng)過一個程序定時值的時長,判斷該程序定時值是否減少為0,是則返回步驟a,否則進入步驟d;d、初始值繼續(xù)減少;e、當初始值減少為0時,進入步驟f;f、軟看門狗產(chǎn)生復(fù)位信號,提供給CPU,進入步驟g;g、輸出現(xiàn)場信息,系統(tǒng)復(fù)位。其中步驟g中,也可以先系統(tǒng)復(fù)位,然后輸出現(xiàn)場信息。所述現(xiàn)場信息包括CPU的寄存器狀態(tài),通過分析該寄存器記錄,定位異常發(fā)生的地址和原因。所述現(xiàn)場信息包括當前任務(wù)信息、堆棧位置、堆棧結(jié)構(gòu)、堆棧內(nèi)容等。通過對堆棧結(jié)構(gòu)的分析,得出異常發(fā)生前當前任務(wù)的函數(shù)調(diào)用軌跡。
通過本發(fā)明的方法,可以將系統(tǒng)故障發(fā)生時的重要現(xiàn)場信息完整地保存下來,任務(wù)運行時大量臨時數(shù)據(jù)的分析,為系統(tǒng)復(fù)位提供了非常有效的支持,改進了以前的看門狗只導(dǎo)致系統(tǒng)復(fù)位而無法進行數(shù)據(jù)輸出及故障分析的問題。
四、附圖說明:
圖一是現(xiàn)有技術(shù)中看門狗的工作原理圖。
圖二是使用本方法的流程圖。
圖三是Motorola公司的MPC8260通信處理器的配置圖。
圖四是本實施例的一個堆棧結(jié)構(gòu)圖。
五、具體實施例:
本方案基于Motorola公司的MPC8260通信處理器實現(xiàn),其內(nèi)核是MPC603e的CPU。本方案可以基本不加改動或加以很少改動就可移植到PowerPC系列其他的32位CPU上,本方案可以使用PSOS操作系統(tǒng)。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于華為技術(shù)有限公司,未經(jīng)華為技術(shù)有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/01123077.0/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 上一篇:藥瓜種子及其栽培生產(chǎn)方法
- 下一篇:多繩摩擦式礦井提升機摩擦襯墊





