新四季網

一種系統故障信息轉儲的方法與系統的製作方法

2023-09-16 14:43:50

專利名稱:一種系統故障信息轉儲的方法與系統的製作方法
技術領域:
本發明涉及作業系統故障定位技術,尤其涉及一種用來實現在作業系統出現故障 時,將故障信息進行轉儲的方法。
背景技術:
隨著嵌入式作業系統在通信行業、汽車製造業、軍事工業等行業的高速發展,以及 開源作業系統的蓬勃發展,作業系統核心技術已經不再由少數企業壟斷。對企業來說,定製 自己的作業系統已經不再是難題。但是,從另一個方面來看,作業系統軟體有它的獨特性, 現有成熟的調試技術,都是基於作業系統本身提供的功能實現的,能夠方便的調試應用程 序的BUG,卻不能很好的調試內核本身。特別是作業系統崩潰時,可能造成系統死機、自動重 啟等現象,導致故障現場不保存,普通的調試工具也無法使用。目前,分析系統崩潰原因的常用方法是通過調試工具分析系統死機文件,找到出 現故障的彙編代碼,然後根據故障現場(出現故障時的寄存器值、堆棧信息、當前任務名稱 等),分析故障原因。但是,這種方法的不足之處在於必須有死機文件存在。這個條件在某些情況下是 不容易得到滿足的,比如1、系統沒有保存死機文件的介質。2、系統崩潰時,文件操作功能已經失效,無法保存死機文件。3、系統崩潰時,並沒有觸發內核異常,而是在中斷處理代碼中陷入了死循環,造成 系統無法調度,進而死機。

發明內容
本發明所要解決的技術問題是,提供一種轉儲系統故障信息的方法及系統。本發明採用了如下技術方案一種系統故障信息轉儲的方法,包括步驟A、根據系統運行環境,在系統運行時註冊故障信息的轉儲接口函數,所述接 口函數中設置有故障信息與轉儲位置的對應關係;步驟B、當系統故障時,回調所述接口函數,並根據該函數的註冊信息轉儲故障信 息到相應的轉儲位置。所述接口函數是在內核、驅動程序、模塊進行註冊的;所述故障信息至少包括以下信息之一任務堆棧、CPU寄存器狀態、內核關鍵數據 結構信息;所述系統故障至少包括以下故障之一系統崩潰、內核陷入死循環。所述步驟B的信息轉儲處理包括以下步驟的一種或多種步驟Bi、如果所述接口函數是註冊了將信息轉儲到內存,則回調該函數,將信息轉 儲到內存;
步驟B2、如果所述接口函數是註冊了將信息轉儲到網絡,則回調該函數,將信息轉 儲到網絡;步驟B3、如果所述接口函數是註冊了將信息轉儲到非易失性存儲介質,則回調該 函數,將信息轉儲到非易失性存儲介質。所述步驟Bl在轉儲信息時,是將信息轉儲到系統的保留內存中;所述步驟Bl之後 還包括以下處理過程系統帶電重啟後,可將所述保留內存中的信息進行二次轉儲,或者打 印出來。所述步驟B2在轉儲信息時,是系統通過直接控制網卡經網絡向其他設備發送數 據包,由其他設備保存信息。一種系統故障信息轉儲的系統,包括信息轉儲註冊模塊,用於根據系統運行環境在系統運行時註冊信息轉儲接口函 數,所述接口函數中設置有故障信息與轉儲位置的對應關係;信息轉儲模塊,用於根據所述接口函數的註冊信息轉儲故障信息到相應的轉儲位 置;故障檢測模塊,用於檢測系統是否出現故障。所述系統故障至少包括以下故障之一系統崩潰、內核陷入死循環。所述信息轉儲模塊在轉儲故障信息時包括以下處理的一種或多種處理1 如果所述接口函數是註冊了將信息轉儲到內存,則回調該函數,將信息轉 儲到內存;處理2 如果所述接口函數是註冊了將信息轉儲到網絡,則回調該函數,將信息轉 儲到網絡;處理3 如果所述接口函數是註冊了將信息轉儲到非易失性存儲介質,則回調該 函數,將信息轉儲到非易失性存儲介質。所述處理1是將信息轉儲到系統的保留內存中;所述處理1之後還包括以下處理 過程系統帶電重啟後,可將所述保留內存中的信息進行二次轉儲,或者列印出來。所述處理2是系統通過直接控制網卡經網絡向其他設備發送數據包,由其他設備
保存信息。本發明的有益效果是本發明將系統故障信息保存到內存、網絡以及非易失性存 儲介質中,避免了系統沒有保存死機文件的介質時獲取不到死機文件的情況,也避免了系 統崩潰時無法保存死機文件的情況,還避免了死機時無法獲取故障信息的情況。


圖1是本發明方法一種具體實施例的流程示意圖。圖2是本發明系統的邏輯結構示意圖。
具體實施例方式下面通過具體實施方式
結合附圖對本發明作進一步詳細說明。如圖1所示的本發明方法具體實施例的流程示意圖,在作業系統開始運行後,1 註冊信息轉儲函數。
此時進行信息轉儲回調函數的初始化,即在內核、驅動程序、模塊註冊信息轉儲回 調函數,註冊的回調函數中設置有故障信息與轉儲位置的對應情況。可以根據系統的實際 情況,分別註冊內存信息轉儲回調函數、網絡信息轉儲回調函數、非易失性介質信息轉儲回 調函數。2 檢測到死機故障。在系統運行過程中,檢測作業系統故障,故障包括系統崩潰或內核陷入死循環。一 旦發現作業系統發生故障,則觸發信息轉儲過程。觸發點包含但是不僅僅包含(1)內核發生了致命性的地址訪問錯誤;(2)內核關鍵數據結構被破壞導致不能繼續運行;(3)內核在關中斷情況下發生了死循環導致不能進行調度。以上三種情況都需要將調試信息、故障現場保存起來供故障分析時使用。對於地址訪問錯誤與關鍵數據結構被破壞類錯誤,將引發異常,作業系統會觸發 調用d0_page_faUlt、die函數等進行異常處理,在這些異常處理函數中,調用回調函數進 行信息轉儲;對於死循環故障,系統在中斷處理函數入口處,記錄下進入中斷處理函數的時間, 在退出中斷處理函數時,記錄下退出中斷處理函數的時間。然後通過NMI和SMI中斷,定時 檢測中斷處理函數的處理時間,如果中斷處理程序長時間沒有退出,那麼就認為是死循環 故障,進而調用回調函數進行信息轉儲。一旦系統檢測到死機故障,則按以下步驟進行處理。3:是否需要保存到內存?判斷是否註冊了內存信息轉儲回調函數,如果註冊了該回調函數,表示需要將調 試信息、故障現場保存到內存中,則繼續執行步驟5。如果沒有註冊該回調函數,則轉到步驟 5。4:將信息轉儲到內存。信息轉儲到內存這種方式最簡單但是最可靠。因為它不依賴於系統中斷,也不依 賴於特定硬體(如磁碟、網卡)。在硬體受限的情況下可以使用。由於內存是易失性介質, 因此,在轉儲信息時,應當將信息轉儲到系統保留的內存中,即調用註冊的內存信息轉儲回 調函數,將調試信息、故障現場保存到內存中。執行完畢信息轉儲到內存後,轉到步驟5。實際操作中,在保存信息後,設備不能斷電。設備帶電重啟後,可以再將保留內存 中的信息進行二次轉儲或者列印出來。5:是否需要保存到網絡?判斷是否註冊了網絡信息轉儲回調函數,如果註冊了該回調函數,表示需要將調 試信息、故障現場通過網絡進行保存,則繼續執行步驟6。如果沒有註冊該回調函數,則轉到 步驟7。6:將信息轉儲到網絡。在系統發生故障時,作業系統提供的網絡接口不一定能夠正常工作,因此,在轉儲 信息時,並不直接調用系統網絡接口函數(例如網絡套接字接口)進行保存,而是調用註冊 的內存信息轉儲回調函數,直接控制網卡,通過網卡向網絡其他主機發送數據包,將調試信 息、故障現場保存到網絡其他主機設備中,執行完畢後,轉到步驟7。
7 是否需要保存到磁碟?判斷是否註冊了非易失介質信息轉儲回調函數,如果註冊了該回調函數,表示需 要將調試信息、故障現場保存到非易失性介質中,則繼續執行步驟8。如果沒有註冊該回調 函數,則結束處理流程。8 將信息轉儲到非易失性介質,如磁碟。轉儲信息到非易失性存儲介質是最常用的轉儲方式。除了磁碟外,也可以轉儲到 快閃記憶體flash等其他非易失性存儲介質中。由於以下情況將可能造成轉儲功能失效如,內存中,內核代碼被破壞,導致文件系統不可用;如,在關中斷情況下,執行了死循環,導致系統不響應中斷,也就無法進行磁碟讀 寫操作;如,磁碟驅動功能不正常。因此,一般情況下,優先將信息轉儲到內存和網絡中,最後才將信息轉儲到非易失 性存儲介質中。這亦是本發明方法最佳具體實施例的處理思路。轉儲時是通過調用註冊的 非易失性介質信息轉儲回調函數,將調試信息、故障現場保存到非易失性介質中。執行完畢 後,結束處理流程。本發明還提供了一種內核故障信息轉儲系統,其邏輯結構如圖2所示,包括信息 轉儲註冊模塊、信息轉儲模塊、故障檢測模塊。信息轉儲註冊模塊根據系統的實際情況在內核、驅動程序、模塊進行信息轉儲回 調函數的初始化,分別註冊內存信息轉儲回調函數、網絡信息轉儲回調函數、非易失性存儲 介質信息轉儲回調函數。故障檢測模塊用於檢測系統是否發生故障。當內核發生了地址訪問錯誤或關鍵數 據結構被破壞等異常被捕獲到時,作業系統會觸發調用do_page_faUlt、die函數等進行異 常處理,在這些異常處理函數中,調用回調函數在信息轉儲模塊進行信息轉儲;對於死循環 故障,系統在中斷處理函數入口處,記錄下進入中斷處理函數的時間,在退出中斷處理函數 時,記錄下退出中斷處理函數的時間。然後通過NMI和SMI中斷,定時檢測中斷處理函數的 處理時間,如果中斷處理程序長時間沒有退出,那麼就認為是死循環故障,進而調用回調函 數在信息轉儲模塊進行信息轉儲。信息轉儲模塊根據註冊了的回調函數判斷若是註冊了內存信息轉儲回調函數, 則轉儲信息到內存;若是註冊了網絡信息轉儲回調函數,則轉儲信息到網絡;若是註冊了 非易失性存儲介質信息轉儲回調函數,則轉儲信息到非易失性存儲介質。以上內容是結合具體的實施方式對本發明所做的進一步詳細說明,不能認定本發 明的具體實施只局限於這些說明。對於本發明所述技術領域的普通技術人員來說,在不脫 離本發明構思的前提下,還可以做出若干簡單推演或替換,都應當視為屬於本發明的保護 範圍。
權利要求
1.一種系統故障信息轉儲的方法,其特徵在於,包括步驟A、根據系統運行環境,在系統運行時註冊故障信息的轉儲接口函數,所述接口函 數中設置有故障信息與轉儲位置的對應關係;步驟B、當系統故障時,回調所述接口函數,並根據該函數的註冊信息轉儲故障信息到 相應的轉儲位置。
2.如權利要求1所述的方法,其特徵在於所述接口函數是在內核、驅動程序、模塊進行註冊的;所述故障信息至少包括以下信息之一任務堆棧、CPU寄存器狀態、內核關鍵數據結構 fn息;所述系統故障至少包括以下故障之一系統崩潰、內核陷入死循環。
3.如權利要求1或2所述的方法,其特徵在於,所述步驟B的信息轉儲處理包括以下步 驟的一種或多種步驟Bi、如果所述接口函數是註冊了將信息轉儲到內存,則回調該函數,將信息轉儲到 內存;步驟B2、如果所述接口函數是註冊了將信息轉儲到網絡,則回調該函數,將信息轉儲到 網絡;步驟B3、如果所述接口函數是註冊了將信息轉儲到非易失性存儲介質,則回調該函數, 將信息轉儲到非易失性存儲介質。
4.如權利要求3所述的方法,其特徵在於,所述步驟Bl在轉儲信息時,是將信息轉儲到 系統的保留內存中;所述步驟Bl之後還包括以下處理過程系統帶電重啟後,可將所述保 留內存中的信息進行二次轉儲,或者列印出來。
5.如權利要求3所述的方法,其特徵在於,所述步驟B2在轉儲信息時,是系統通過直接 控制網卡經網絡向其他設備發送數據包,由其他設備保存信息。
6.一種系統故障信息轉儲的系統,其特徵在於,包括信息轉儲註冊模塊,用於根據系統運行環境在系統運行時註冊信息轉儲接口函數,所 述接口函數中設置有故障信息與轉儲位置的對應關係;信息轉儲模塊,用於根據所述接口 函數的註冊信息轉儲故障信息到相應的轉儲位置;故障檢測模塊,用於檢測系統是否出現故障。
7.如權利要求6所述的系統,其特徵在於,系統故障至少包括以下故障之一系統崩 潰、內核陷入死循環。
8.如權利要求6所述的系統,其特徵在於,所述信息轉儲模塊在轉儲故障信息時包括 以下處理的一種或多種處理1 如果所述接口函數是註冊了將信息轉儲到內存,則回調該函數,將信息轉儲到 內存;處理2 如果所述接口函數是註冊了將信息轉儲到網絡,則回調該函數,將信息轉儲到 網絡;處理3 如果所述接口函數是註冊了將信息轉儲到非易失性存儲介質,則回調該函數, 將信息轉儲到非易失性存儲介質。
9.如權利要求8所述的系統,其特徵在於,所述處理1是將信息轉儲到系統的保留內存中;所述處理1之後還包括以下處理過程系統帶電重啟後,可將所述保留內存中的信息進 行二次轉儲,或者列印出來。
10.如權利要求8所述的系統,其特徵在於,所述處理2是系統通過直接控制網卡經網 絡向其他設備發送數據包,由其他設備保存信息。
全文摘要
本發明公開了一種內核故障信息轉儲的方法,該方法針對系統機故障的不同情況,收集作業系統內核調試信息、故障信息,並將這些信息通過不同方式如內存、網絡、非易失性存儲介質等轉儲起來,以便在作業系統內核故障時,儘量保存更多有用的信息,方便定位系統故障問題。
文檔編號G06F11/14GK102063344SQ200910109669
公開日2011年5月18日 申請日期2009年11月18日 優先權日2009年11月18日
發明者謝寶友 申請人:中興通訊股份有限公司

同类文章

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

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有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-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀