欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種處理家庭網(wǎng)關(guān)系統(tǒng)內(nèi)核崩潰的方法及系統(tǒng)的制作方法_2

文檔序號:8922480閱讀:來源:國知局
指針變量,轉(zhuǎn)到步驟S3。
[0042]S3:讀取每個寄存器指針變量中的內(nèi)核崩潰信息,內(nèi)核崩潰信息的讀取順序依次為異常地址信息、最后返回的地址信息、CPU寄存器狀態(tài)值和CPU寄存器調(diào)用過的內(nèi)核函數(shù)的信息;將所有寄存器指針變量中的內(nèi)核崩潰信息均保存至全局緩沖區(qū),轉(zhuǎn)到步驟S4。
[0043]步驟S3中,讀取CPU寄存器調(diào)用過的內(nèi)核函數(shù)的信息的具體步驟包括:利用寄存器指針變量查詢當(dāng)前CPU任務(wù)的內(nèi)存地址;以該內(nèi)存地址為索引,在存放所有內(nèi)核函數(shù)的內(nèi)核符號表(kallsys.map)中進(jìn)行查找,獲取調(diào)用過的內(nèi)核函數(shù)的名字、內(nèi)核函數(shù)的大小,調(diào)用到內(nèi)核函數(shù)中的配置地址。
[0044]步驟S3中,將所有寄存器指針變量中的內(nèi)核崩潰信息均保存至全局緩沖區(qū)時,是以append形式進(jìn)行保存的,即將內(nèi)核崩潰信息保存在全局緩沖區(qū)的最后。
[0045]S4:將全局緩沖區(qū)中所有的內(nèi)核崩潰信息寫入到Flash存儲器的指定文件夾,轉(zhuǎn)到步驟S5。
[0046]步驟S4具體包括以下步驟:在Flash存儲器中指定需要寫入文件夾的名稱和路徑;根據(jù)內(nèi)核崩潰信息的起始地址、字節(jié)數(shù)大小,將全局緩沖區(qū)中所有的內(nèi)核崩潰信息寫入到指定文件夾中。
[0047]S5:將步驟SI中的自旋鎖進(jìn)行釋放,轉(zhuǎn)到步驟S6。
[0048]S6:讀取CPU的狀態(tài),判斷當(dāng)前CPU是否處于中斷條件,若是,轉(zhuǎn)到步驟S7 ;否則轉(zhuǎn)到步驟S8。
[0049]S7:打印中斷異常提示信息至系統(tǒng)終端,用戶根據(jù)中斷異常提示信息及Flash存儲器內(nèi)的內(nèi)核崩潰信息進(jìn)行調(diào)試,結(jié)束。
[0050]該中斷異常提示信息用于:提示開發(fā)者(或用戶),在CPU中斷條件下出現(xiàn)了內(nèi)核崩潰。實(shí)際操作時,可打印一行“Fatal except1n in interrupt”作為該中斷異常提示信息。
[0051]S8:休眠3?8秒后,打印非中斷異常提示信息至系統(tǒng)終端,用戶根據(jù)非中斷異常提示信息及Flash存儲器內(nèi)的內(nèi)核崩潰信息進(jìn)行調(diào)試,結(jié)束。
[0052]非中斷條件下,先通過休眠3?8秒后再進(jìn)行打印操作,可以確保上述步驟S4中的信息成功已全部寫入到Flash存儲器中,然后再進(jìn)行打印。本實(shí)施例中,休眠時間優(yōu)選為5秒。
[0053]該非中斷異常提示信息用于:提示開發(fā)者(或用戶),在CPU未中斷條件下出現(xiàn)了內(nèi)核崩潰。實(shí)際操作時,可打印一行“Fatal exc印t1n”作為該非中斷異常提示信息。
[0054]本發(fā)明實(shí)施例還提供一種實(shí)現(xiàn)上述方法的處理家庭網(wǎng)關(guān)系統(tǒng)內(nèi)核崩潰的系統(tǒng),包括寄存器指針變量記錄模塊、內(nèi)核崩潰信息捕獲模塊、內(nèi)核崩潰信息寫入模塊、提示信息打印模塊以及自旋鎖控制模塊。
[0055]寄存器指針變量記錄模塊用于:在系統(tǒng)內(nèi)核崩潰后出現(xiàn)異常的CPU寄存器內(nèi),查找并記錄與當(dāng)前系統(tǒng)對應(yīng)的所有堆棧的寄存器指針變量;向內(nèi)核崩潰信息捕獲模塊發(fā)送捕獲?目號O
[0056]內(nèi)核崩潰信息捕獲模塊用于:收到捕獲信號后,讀取每個寄存器指針變量中的內(nèi)核崩潰信息,內(nèi)核崩潰信息的讀取順序依次為異常地址信息(epc信息)、最后返回的地址信息(ra信息)、CPU寄存器狀態(tài)值和CPU寄存器調(diào)用過的內(nèi)核函數(shù)的信息;將所有寄存器指針變量中的內(nèi)核崩潰信息均保存至全局緩沖區(qū);向內(nèi)核崩潰信息寫入模塊發(fā)送寫入信號。
[0057]內(nèi)核崩潰信息寫入模塊用于:收到寫入信號后,將全局緩沖區(qū)中所有的內(nèi)核崩潰信息寫入到Flash存儲器的指定文件夾;向提示信息打印模塊發(fā)送打印信號。
[0058]提示信息打印模塊用于:收到打印信號后,根據(jù)系統(tǒng)的內(nèi)核崩潰狀態(tài)打印異常提示信息至系統(tǒng)終端。該提示信息打印模塊包括處理模塊和打印模塊;
[0059]處理模塊用于:讀取CPU的狀態(tài),判斷當(dāng)前CPU是否處于中斷條件下,若是,發(fā)送中斷異常打印信號;否則,發(fā)送非中斷異常打印信號;
[0060]打印模塊用于:收到中斷異常打印信號后,打印中斷異常提示信息至系統(tǒng)終端;收到非中斷異常打印信號后,休眠3?8秒,打印非中斷異常提示信息至系統(tǒng)終端。
[0061]自旋鎖控制模塊用于:在寄存器指針變量記錄模塊開始記錄前,初始化一個用于禁止本地中斷、禁止內(nèi)核搶占的自旋鎖;在內(nèi)核崩潰信息寫入后、異常提示信息打印前,釋放自旋鎖。
[0062]本發(fā)明不局限于上述實(shí)施方式,對于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以做出若干改進(jìn)和潤飾,這些改進(jìn)和潤飾也視為本發(fā)明的保護(hù)范圍之內(nèi)。本說明書中未作詳細(xì)描述的內(nèi)容屬于本領(lǐng)域?qū)I(yè)技術(shù)人員公知的現(xiàn)有技術(shù)。
【主權(quán)項(xiàng)】
1.一種處理家庭網(wǎng)關(guān)系統(tǒng)內(nèi)核崩潰的方法,其特征在于,包括以下步驟: A、在系統(tǒng)內(nèi)核崩潰后出現(xiàn)異常的CPU寄存器內(nèi),查找并記錄與當(dāng)前系統(tǒng)對應(yīng)的所有堆棧的寄存器指針變量,轉(zhuǎn)到步驟B ; B、讀取每個寄存器指針變量中的內(nèi)核崩潰信息,內(nèi)核崩潰信息的讀取順序依次為異常地址信息、最后返回的地址信息、CPU寄存器狀態(tài)值和CPU寄存器調(diào)用過的內(nèi)核函數(shù)的信息;將所有寄存器指針變量中的內(nèi)核崩潰信息均保存至全局緩沖區(qū),轉(zhuǎn)到步驟C ; C、將全局緩沖區(qū)中所有的內(nèi)核崩潰信息寫入到Flash存儲器的指定文件夾,轉(zhuǎn)到步驟D ; D、根據(jù)系統(tǒng)的內(nèi)核崩潰狀態(tài)打印異常提示信息至系統(tǒng)終端;用戶根據(jù)異常提示信息及Flash存儲器內(nèi)的內(nèi)核崩潰信息進(jìn)行調(diào)試,結(jié)束。2.如權(quán)利要求1所述的處理家庭網(wǎng)關(guān)系統(tǒng)內(nèi)核崩潰的方法,其特征在于:步驟A之前包括以下步驟:初始化一個用于禁止本地中斷、禁止內(nèi)核搶占的自旋鎖;步驟C與D之間包括以下步驟:將自旋鎖進(jìn)行釋放。3.如權(quán)利要求1所述的處理家庭網(wǎng)關(guān)系統(tǒng)內(nèi)核崩潰的方法,其特征在于,步驟C具體包括以下步驟:在Flash存儲器中指定需要寫入文件夾的名稱和路徑;根據(jù)內(nèi)核崩潰信息的起始地址、字節(jié)數(shù)大小,將全局緩沖區(qū)中所有的內(nèi)核崩潰信息寫入到指定文件夾中。4.如權(quán)利要求1所述的處理家庭網(wǎng)關(guān)系統(tǒng)內(nèi)核崩潰的方法,其特征在于:步驟D所述根據(jù)系統(tǒng)的內(nèi)核崩潰狀態(tài)打印異常提示信息至系統(tǒng)終端,具體包括以下步驟:讀取CPU的狀態(tài),判斷當(dāng)前CPU是否處于中斷條件,若是,打印中斷異常提示信息至系統(tǒng)終端;否則,休眠3?8秒,打印非中斷異常提示信息至系統(tǒng)終端。5.如權(quán)利要求1所述的處理家庭網(wǎng)關(guān)系統(tǒng)內(nèi)核崩潰的方法,其特征在于:步驟B中,讀取CPU寄存器調(diào)用過的內(nèi)核函數(shù)的信息的具體步驟包括:利用寄存器指針變量查詢當(dāng)前CPU任務(wù)的內(nèi)存地址;以該內(nèi)存地址為索引,在存放所有內(nèi)核函數(shù)的內(nèi)核符號表中進(jìn)行查找,獲取調(diào)用過的內(nèi)核函數(shù)的名字、內(nèi)核函數(shù)的大小,調(diào)用到內(nèi)核函數(shù)中的配置地址。6.如權(quán)利要求1所述的處理家庭網(wǎng)關(guān)系統(tǒng)內(nèi)核崩潰的方法,其特征在于:步驟A具體包括以下步驟:在當(dāng)前系統(tǒng)正在運(yùn)行的堆棧中記錄寄存器指針變量;根據(jù)所述堆棧中存儲的上一級調(diào)用函數(shù)的棧指針回溯至上一級堆棧,記錄上一級堆棧內(nèi)的寄存器指針變量;依次回溯,直至記錄所有堆棧的寄存器指針變量,轉(zhuǎn)到步驟B。7.如權(quán)利要求1所述的處理家庭網(wǎng)關(guān)系統(tǒng)內(nèi)核崩潰的方法,其特征在于:步驟B中所述將所有寄存器指針變量中的內(nèi)核崩潰信息均保存至全局緩沖區(qū)的具體步驟為:將所有寄存器指針變量中的內(nèi)核崩潰信息均保存至全局緩沖區(qū)的最后。8.一種實(shí)現(xiàn)權(quán)利要求1至7中任一項(xiàng)所述方法的處理家庭網(wǎng)關(guān)系統(tǒng)內(nèi)核崩潰的系統(tǒng),其特征在于:包括寄存器指針變量記錄模塊、內(nèi)核崩潰信息捕獲模塊、內(nèi)核崩潰信息寫入模塊和提不?目息打印模塊; 所述寄存器指針變量記錄模塊用于:在系統(tǒng)內(nèi)核崩潰后出現(xiàn)異常的CPU寄存器內(nèi),查找并記錄與當(dāng)前系統(tǒng)對應(yīng)的所有堆棧的寄存器指針變量;向內(nèi)核崩潰信息捕獲模塊發(fā)送捕獲?目號; 所述內(nèi)核崩潰信息捕獲模塊用于:收到信息捕獲信號后,讀取每個寄存器指針變量中的內(nèi)核崩潰信息,內(nèi)核崩潰信息的讀取順序依次為異常地址信息、最后返回的地址信息、CPU寄存器狀態(tài)值和CPU寄存器調(diào)用過的內(nèi)核函數(shù)的信息;將所有寄存器指針變量中的內(nèi)核崩潰信息均保存至全局緩沖區(qū);向內(nèi)核崩潰信息寫入模塊發(fā)送寫入信號; 所述內(nèi)核崩潰信息寫入模塊用于:收到寫入信號后,將全局緩沖區(qū)中所有的內(nèi)核崩潰信息寫入到Flash存儲器的指定文件夾;向提示信息打印模塊發(fā)送打印信號; 所述提示信息打印模塊用于:收到打印信號后,根據(jù)系統(tǒng)的內(nèi)核崩潰狀態(tài)打印異常提示信息至系統(tǒng)終端。9.如權(quán)利要求8所述的處理家庭網(wǎng)關(guān)系統(tǒng)內(nèi)核崩潰的系統(tǒng),其特征在于:所述提示信息打印模塊包括處理模塊和打印模塊; 所述處理模塊用于:讀取CPU的狀態(tài),判斷當(dāng)前CPU是否處于中斷條件下,若是,發(fā)送中斷異常打印信號;否則,發(fā)送非中斷異常打印信號; 所述打印模塊用于:收到中斷異常打印信號后,打印中斷異常提示信息至系統(tǒng)終端;收到非中斷異常打印信號后,休眠3?8秒,打印非中斷異常提示信息至系統(tǒng)終端。10.如權(quán)利要求8所述的處理家庭網(wǎng)關(guān)系統(tǒng)內(nèi)核崩潰的系統(tǒng),其特征在于:該系統(tǒng)還包括自旋鎖控制模塊,所述自旋鎖控制模塊用于:在寄存器指針變量記錄模塊開始記錄前,初始化一個用于禁止本地中斷、禁止內(nèi)核搶占的自旋鎖;在內(nèi)核崩潰信息寫入后、異常提示信息打印前,釋放自旋鎖。
【專利摘要】本發(fā)明公開了一種處理家庭網(wǎng)關(guān)系統(tǒng)內(nèi)核崩潰的方法及系統(tǒng),涉及Linux內(nèi)核異常處理技術(shù)領(lǐng)域。該方法包括以下步驟:在系統(tǒng)內(nèi)核崩潰后出現(xiàn)異常的CPU寄存器內(nèi),查找并記錄與當(dāng)前系統(tǒng)對應(yīng)的所有堆棧的寄存器指針變量;讀取每個寄存器指針變量中的內(nèi)核崩潰信息,并將其保存至全局緩沖區(qū);將全局緩沖區(qū)中所有的內(nèi)核崩潰信息寫入到Flash存儲器的指定文件夾;根據(jù)系統(tǒng)的內(nèi)核崩潰狀態(tài)打印異常提示信息至系統(tǒng)終端,用戶根據(jù)異常提示信息及Flash存儲器內(nèi)的內(nèi)核崩潰信息進(jìn)行調(diào)試。本發(fā)明能在不依賴串口的情況下,完整地捕獲內(nèi)核崩潰信息,處理過程高效、便捷,且復(fù)用性高。
【IPC分類】H04L12/66, G06F11/07
【公開號】CN104899111
【申請?zhí)枴緾N201510311687
【發(fā)明人】趙偉, 周轉(zhuǎn)運(yùn), 王志軍
【申請人】烽火通信科技股份有限公司
【公開日】2015年9月9日
【申請日】2015年6月9日
當(dāng)前第2頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
大同县| 布尔津县| 温州市| 宜君县| 吉林市| 鹤壁市| 开远市| 思南县| 普定县| 丰镇市| 襄樊市| 招远市| 临沂市| 杭州市| 枣强县| 化州市| 崇信县| 古交市| 平遥县| 商城县| 富顺县| 射阳县| 浠水县| 偃师市| 安徽省| 江都市| 大理市| 团风县| 青海省| 马尔康县| 田阳县| 苍山县| 从江县| 元氏县| 梓潼县| 宜兰市| 南澳县| 红安县| 澜沧| 喀什市| 泸溪县|