新四季網

嵌入式軟體任務死循環監控方法

2023-05-28 10:35:36 3

專利名稱:嵌入式軟體任務死循環監控方法
技術領域:
本發明屬於計算機作業系統任務管理技術領域,特別涉及嵌入式軟體任務死循環監控方法。
已有的嵌入式軟體死循環監控的實現方法,主要是啟動一個看門狗定時器,該看門狗定時器的中斷服務例程不斷地檢查每個任務對各自消息的處理,若某任務對一個消息的處理時間超過規定的一個最大的閾值,則認為該任務發生了死循環,該方法的具體步驟是1)在正在開發的嵌入式軟體中創建看門狗定時器;2)啟動看門狗定時器,看門狗定時器的中斷服務例程檢測每個任務對各自消息的處理,這時系統運行的上下文是在中斷狀態中;3)若某個任務對一個消息的處理時間超過了預先規定的閾值,則認為該任務發生了死循環,列印信息通知開發人員該任務進入了死循環。
由於看門狗定時器是中斷上下文,當檢測出來任務發生死循環時,只能告知某任務發生了死循環,這對死循環問題的精確定位沒有多大的實際意義。

發明內容
本發明的目的是為克服已有技術的不足之處,提出一種嵌入式軟體任務死循環監控方法,可解決在中斷上下文中檢測出來任務死循環後,給出該任務的調用棧,為分析出發生死循環的精確位置提供了可靠的依據。
本發明提出的一種嵌入式軟體任務死循環監控方法,包括以下步驟1)啟動硬體定時器;2)系統運行的上下文在中斷狀態中,該硬體定時器的中斷服務例程檢測各任務處理各自消息的時間;3)判斷是否發生死循環,若某個任務對一個消息的處理時間超過了預先規定的閾值,則認為該任務發生了死循環;4)將系統運行的中斷上下文轉換成任務上下文;5)在系統的任務上下文中調讀調用棧函數並輸出。
所述的硬體定時器可以是看門狗定時器。
本發明的工作原理由於嵌入式軟體編譯生成的最終文件一般是ELF文件格式,這種文件中含有非常有用的調試信息,可給出軟體運行過程發生了死循環任務的調用棧,有了調用棧,可方便地根據ELF文件的統一格式分析出該調用棧在那些文件及在該文件中的行號。
本發明的特點及效果本發明可將中斷上下文轉換成任務上下文,即可獲得調用棧信息。從而可以精確地得到發生死循環時整個軟體系統的調用棧,也就是系統發生死循環時的函數間調用關係。利用本方法給出的調用棧,再通過一個分析ELF文件的小工具,則可以分析出死循環發生在代碼的那個文件、哪行,對分析問題具有重要使用價值。


圖1為本發明方法總體流程圖。
圖2為本發明的中斷上下文轉換成任務上下文的方法實施例流程圖。
圖3為本發明的調讀調用棧函數的方法實施例流程圖。
上述的硬體定時器可以是看門狗定時器,其中,第4)、5)步驟的實施例詳細流程分別詳細說明如下本實施例的中斷上下文轉換成任務上下文的方法如圖2所示,具體包括以下步驟1)獲得發生死循環任務的系統標示;2)掛起死循環任務;3)申請內存,並填充消息頭;4)將死循環任務的系統標示寫到消息體內;5)向調試任務發消息;
6)運行中的調試任務收到消息後,判斷是否是任務死循環的通知消息;7)若不是,則轉回到6);8)若是,則根據消息中攜帶的死循環任務的系統標示,調讀調用棧的函數。
本實施例的調讀調用棧函數的方法實施例如圖3所示,具體包括以下步驟1)根據死循環任務的系統標示獲得系統通用寄存器的值;2)從通用寄存器中獲得調用棧的第一層棧指針;3)設置循環初始變量i=0(i為調用棧的層號);4)輸出第i層調用棧;5)若i小於最大的調用棧層數(本實施例設定調用棧層數為10)且棧指針不為空時,i加1,取下一層調用棧,轉到4);6)否則,結束。
權利要求
1.一種嵌入式軟體任務死循環監控方法,包括以下步驟1)啟動硬體定時器;2)系統運行的上下文在中斷狀態中,該硬體定時器的中斷服務例程檢測各任務處理各自消息的時間;3)判斷是否發生死循環,若某個任務對一個消息的處理時間超過了預先規定的閾值,則認為該任務發生了死循環;4)將系統運行的中斷上下文轉換成任務上下文;5)在系統的任務上下文中調讀調用棧函數並輸出。
2.如權利要求1所述的嵌入式軟體任務死循環監控方法,其特徵在於,所說的中斷上下文轉換成任務上下文的方法具體包括以下步驟1)獲得發生死循環任務的系統標示;2)掛起死循環任務;3)申請內存,並填充消息頭;4)將死循環任務的系統標示寫到消息體內;5)向調試任務發消息;6)運行中的調試任務收到消息後,判斷是否是任務死循環的通知消息;7)若不是,則轉回到6);8)若是,則根據消息中攜帶的死循環任務的系統標示,調讀調用棧的函數。
3.如權利要求1所述的嵌入式軟體任務死循環監控方法,其特徵在於,所說的調讀調用棧函數的方法,具體包括以下步驟1)根據死循環任務的系統標示獲得系統通用寄存器的值;2)從通用寄存器中獲得調用棧的第一層棧指針;3)設置循環初始變量i=0,i為調用棧的層號;4)輸出第i層調用棧;5)若i小於最大的調用棧層數,且棧指針不為空時,i加1,取下一層調用棧,轉到4);6)否則,結束。
4.如權利要求1所述的嵌入式軟體任務死循環監控方法,其特徵在於所述的硬體定時器為看門狗定時器。
全文摘要
本發明屬於計算機作業系統任務管理技術領域,涉及嵌入式軟體任務死循環監控方法。主要包括;啟動硬體定時器,硬體定時器的中斷服務例程檢測各任務處理各自消息的時間;若某個任務對一個消息的處理時間超過了預先規定的閾值,則認為該任務發生了死循環;將中斷上下文轉換成任務上下文;在任務上下文中獲得該任務的調用棧信息,並輸出調用棧。本發明可解決在中斷上下文中檢測出來任務死循環後,給出該任務的調用棧,為分析出發生死循環的精確位置提供了可靠的依據。
文檔編號G06F11/36GK1477512SQ02128400
公開日2004年2月25日 申請日期2002年8月20日 優先權日2002年8月20日
發明者楊建軍 申請人:華為技術有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀