本申請(qǐng)涉及嵌入式技術(shù)領(lǐng)域,尤其涉及一種日志管理方法及裝置。
背景技術(shù):
隨著計(jì)算機(jī)技術(shù)的發(fā)展,嵌入式系統(tǒng)已成為計(jì)算機(jī)領(lǐng)域的一個(gè)重要組成部分。對(duì)于嵌入式系統(tǒng)來(lái)說(shuō),運(yùn)行過(guò)程中所記錄的日志信息對(duì)于用戶定位故障有著非常重要的作用。
在現(xiàn)有技術(shù)中,嵌入式設(shè)備可以先將運(yùn)行過(guò)程中產(chǎn)生的日志信息寫入內(nèi)存文件系統(tǒng),之后,再將內(nèi)存文件系統(tǒng)中的日志信息壓縮,寫入Flash文件系統(tǒng)中,以避免因嵌入式設(shè)備斷電導(dǎo)致內(nèi)存文件系統(tǒng)中記錄的日志信息丟失。
然而,在現(xiàn)有技術(shù)中,若在將內(nèi)存文件系統(tǒng)中的日志信息壓縮,寫入Flash文件系統(tǒng)之前,嵌入式設(shè)備斷電,則內(nèi)存文件系統(tǒng)中的日志信息仍會(huì)丟失;同時(shí),若產(chǎn)生的日志信息較多,則嵌入式設(shè)備仍需要多次向Flash文件系統(tǒng)寫入日志信息,從而減少Flash文件系統(tǒng)的使用壽命。
技術(shù)實(shí)現(xiàn)要素:
有鑒于此,本申請(qǐng)?zhí)峁┮环N日志管理方法及裝置,以實(shí)現(xiàn)有效地保存記錄有嵌入式設(shè)備運(yùn)行過(guò)程中出現(xiàn)的異常信息的日志信息,以便于用戶根據(jù)日志信息定位故障、分析異常原因等,同時(shí)避免對(duì)Flash文件系統(tǒng)的使用壽命造成影響。
具體地,本申請(qǐng)是通過(guò)如下技術(shù)方案實(shí)現(xiàn)的:
根據(jù)本申請(qǐng)實(shí)施例的第一方面,提供一種日志管理方法,所述方法應(yīng)用在具有嵌入式系統(tǒng)的終端上,所述嵌入式系統(tǒng)掛載有內(nèi)存文件系統(tǒng)和Flash文件系統(tǒng),所述方法包括:
獲取所述嵌入式系統(tǒng)的日志信息;
獲取所述嵌入式系統(tǒng)的工作狀態(tài);
若所述工作狀態(tài)表示所述嵌入式系統(tǒng)正常運(yùn)行,則將所述日志信息寫入所述內(nèi)存文件系統(tǒng);若所述工作狀態(tài)表示所述嵌入式系統(tǒng)中發(fā)生異常,則將所述日志信息寫入所述Flash文件系統(tǒng)。
可選的,所述方法還包括:
確定所述日志信息所標(biāo)識(shí)的事件;
若所述事件屬于預(yù)設(shè)的關(guān)鍵事件,則將所述日志信息寫入所述Flash文件系統(tǒng)。
可選的,所述嵌入式系統(tǒng)中發(fā)生異常包括:所述嵌入式系統(tǒng)的內(nèi)核發(fā)生異常、所述嵌入式系統(tǒng)中的業(yè)務(wù)進(jìn)程發(fā)生異常。
可選的,當(dāng)所述工作狀態(tài)表示所述嵌入式系統(tǒng)的內(nèi)核發(fā)生異常時(shí),所述將所述日志信息寫入所述Flash文件系統(tǒng)包括:
基于預(yù)設(shè)的Pstore機(jī)制,將所述日志信息寫入預(yù)設(shè)的內(nèi)存空間中;
在所述嵌入式系統(tǒng)重啟之后,將所述內(nèi)存空間中的所述日志信息壓縮;
將壓縮后的所述日志信息寫入所述Flash文件系統(tǒng)。
可選的,當(dāng)所述工作狀態(tài)表示所述嵌入式系統(tǒng)中的業(yè)務(wù)進(jìn)程發(fā)生異常時(shí),所述將所述日志信息寫入所述Flash文件系統(tǒng)包括:
將內(nèi)存文件系統(tǒng)中的所述日志信息壓縮;
將壓縮后的所述日志信息寫入所述Flash文件系統(tǒng)。
根據(jù)本申請(qǐng)實(shí)施例的第二方面,提供一種日志管理裝置,所述裝置應(yīng)用在具有嵌入式系統(tǒng)的終端上,所述嵌入式系統(tǒng)掛載有內(nèi)存文件系統(tǒng)和Flash文件系統(tǒng),所述裝置包括:
信息獲取模塊,用于獲取所述嵌入式系統(tǒng)的日志信息;
狀態(tài)獲取模塊,用于獲取所述嵌入式系統(tǒng)的工作狀態(tài);
存儲(chǔ)處理模塊,用于若所述工作狀態(tài)表示所述嵌入式系統(tǒng)正常運(yùn)行,則將所述日志信息寫入所述內(nèi)存文件系統(tǒng);若所述工作狀態(tài)表示所述嵌入式系統(tǒng)中發(fā)生異常,則將所述日志信息寫入所述Flash文件系統(tǒng)。
可選的,所述裝置還包括:
事件確定模塊,用于確定所述日志信息所標(biāo)識(shí)的事件;
所述存儲(chǔ)處理模塊還用于:若所述事件屬于預(yù)設(shè)的關(guān)鍵事件,則將所述日志信息寫入所述Flash文件系統(tǒng)。
可選的,所述嵌入式系統(tǒng)中發(fā)生異常包括:所述嵌入式系統(tǒng)的內(nèi)核發(fā)生異常、所述嵌入式系統(tǒng)中的業(yè)務(wù)進(jìn)程發(fā)生異常。
可選的,當(dāng)所述工作狀態(tài)表示所述嵌入式系統(tǒng)的內(nèi)核發(fā)生異常時(shí),所述存儲(chǔ)處理模塊包括:
第一存儲(chǔ)子模塊,用于基于預(yù)設(shè)的Pstore機(jī)制,將所述日志信息寫入預(yù)設(shè)的內(nèi)存空間中;
第一壓縮子模塊,用于在所述嵌入式系統(tǒng)重啟之后,將所述內(nèi)存空間中的所述日志信息壓縮;
第二存儲(chǔ)子模塊,用于將壓縮后的所述日志信息寫入所述Flash文件系統(tǒng)。
可選的,當(dāng)所述工作狀態(tài)表示所述嵌入式系統(tǒng)中的業(yè)務(wù)進(jìn)程發(fā)生異常時(shí),所述存儲(chǔ)處理模塊包括:
第二壓縮子模塊,用于將內(nèi)存文件系統(tǒng)中的所述日志信息壓縮;
第三存儲(chǔ)子模塊,用于將壓縮后的所述日志信息寫入所述Flash文件系統(tǒng)。
由上述實(shí)施例可見,由于在嵌入式系統(tǒng)正常工作時(shí),將獲取到的日志信息寫入內(nèi)存文件系統(tǒng),在嵌入式系統(tǒng)發(fā)生異常時(shí),將獲取到的日志信息寫入Flash文件系統(tǒng),從而大大減少了將日志信息寫入Flash文件系統(tǒng)的次數(shù),避免由于頻繁地向Flash文件系統(tǒng)寫入日志信息而減少Flash文件系統(tǒng)的使用壽命;并且,可以有效地保存記錄有嵌入式設(shè)備運(yùn)行過(guò)程中出現(xiàn)的異常信息的日志信息,以便于用戶根據(jù)日志信息定位故障、分析異常原因等。
附圖說(shuō)明
圖1為本申請(qǐng)日志管理方法的一個(gè)實(shí)施例流程圖;
圖2為本申請(qǐng)日志管理裝置所在終端的一種硬件結(jié)構(gòu)圖;
圖3為本申請(qǐng)日志管理裝置的一個(gè)實(shí)施例框圖。
具體實(shí)施方式
這里將詳細(xì)地對(duì)示例性實(shí)施例進(jìn)行說(shuō)明,其示例表示在附圖中。下面的描述涉及附圖時(shí),除非另有表示,不同附圖中的相同數(shù)字表示相同或相似的要素。以下示例性實(shí)施例中所描述的實(shí)施方式并不代表與本申請(qǐng)相一致的所有實(shí)施方式。相反,它們僅是與如所附權(quán)利要求書中所詳述的、本申請(qǐng)的一些方面相一致的裝置和方法的例子。
在本申請(qǐng)使用的術(shù)語(yǔ)是僅僅出于描述特定實(shí)施例的目的,而非旨在限制本申請(qǐng)。在本申請(qǐng)和所附權(quán)利要求書中所使用的單數(shù)形式的“一種”、“所述”和“該”也旨在包括多數(shù)形式,除非上下文清楚地表示其他含義。還應(yīng)當(dāng)理解,本文中使用的術(shù)語(yǔ)“和/或”是指并包含一個(gè)或多個(gè)相關(guān)聯(lián)的列出項(xiàng)目的任何或所有可能組合。
應(yīng)當(dāng)理解,盡管在本申請(qǐng)可能采用術(shù)語(yǔ)第一、第二、第三等來(lái)描述各種信息,但這些信息不應(yīng)限于這些術(shù)語(yǔ)。這些術(shù)語(yǔ)僅用來(lái)將同一類型的信息彼此區(qū)分開。例如,在不脫離本申請(qǐng)范圍的情況下,第一信息也可以被稱為第二信息,類似地,第二信息也可以被稱為第一信息。取決于語(yǔ)境,如在此所使用的詞語(yǔ)“如果”可以被解釋成為“在……時(shí)”或“當(dāng)……時(shí)”或“響應(yīng)于確定”。
在嵌入式系統(tǒng)的運(yùn)行過(guò)程中,系統(tǒng)內(nèi)核和諸多業(yè)務(wù)進(jìn)程會(huì)產(chǎn)生各種錯(cuò)誤信息、警告信息或者其他的提示信息,這些信息對(duì)于用戶了解嵌入式系統(tǒng)的運(yùn)行狀態(tài),以及定位故障有著非常重要的作用,因此,在嵌入式設(shè)備上,可以將嵌入式系統(tǒng)在運(yùn)行過(guò)程中產(chǎn)生的上述信息生成日志信息,并記錄下這些日志信息。
在嵌入式設(shè)備中,若將嵌入式系統(tǒng)在運(yùn)行過(guò)程中獲取到的日志信息寫入Flash文件系統(tǒng),則將由于頻繁地將日志信息寫入Flash文件系統(tǒng),從而減少Flash文件系統(tǒng)的使用壽命;若將嵌入式系統(tǒng)在運(yùn)行過(guò)程中獲取到的日志信息寫入內(nèi)存文件系統(tǒng),則在嵌入式設(shè)備斷電重啟之后,內(nèi)存文件系統(tǒng)中的日志信息將丟失,從而用戶無(wú)法根據(jù)日志信息進(jìn)行故障定位、異常原因分析等工作。
基于上述描述,為了有效地保存嵌入式設(shè)備在運(yùn)行過(guò)程中獲取到的日志信息,尤其是記錄有嵌入式設(shè)備在運(yùn)行過(guò)程中出現(xiàn)的異常信息的日志信息,并且避免對(duì)Flash文件系統(tǒng)的使用壽命造成影響,本申請(qǐng)?zhí)峁┮环N日志管理方法及裝置。
如下,列舉下述實(shí)施例描述本申請(qǐng)?zhí)峁┑娜罩竟芾矸椒ā?/p>
請(qǐng)參見圖1,為本申請(qǐng)日志管理方法的一個(gè)實(shí)施例流程圖,該方法可以應(yīng)用在具有嵌入式系統(tǒng)的終端上,所述嵌入式系統(tǒng)掛載有內(nèi)存文件系統(tǒng),例如tmpfs文件系統(tǒng)和Flash文件系統(tǒng),例如JFFS2文件系統(tǒng),該方法可以包括以下步驟:
步驟S101:獲取嵌入式系統(tǒng)的日志信息。
在嵌入式系統(tǒng)的運(yùn)行過(guò)程中,可以將發(fā)生的事件、系統(tǒng)運(yùn)行狀況、以及系統(tǒng)中各項(xiàng)業(yè)務(wù)進(jìn)程運(yùn)行狀況等信息進(jìn)行記錄,根據(jù)所記錄的這些信息可以獲取嵌入式系統(tǒng)的日志信息。
根據(jù)所記錄信息的不同,日志信息可以具有多種級(jí)別,例如,emerg(緊急情況)、error(一般錯(cuò)誤消息)、warning(警告信息)、info(通用性信息)、debug(調(diào)試信息)、等等級(jí)別。用戶可以自定義需要保存的日志信息的級(jí)別。
步驟S102:獲取嵌入式系統(tǒng)的工作狀態(tài),若工作狀態(tài)表示嵌入式系統(tǒng)正常運(yùn)行,則執(zhí)行步驟S103;若工作狀態(tài)表示嵌入式系統(tǒng)中發(fā)生異常,則執(zhí)行步驟S104。
在本申請(qǐng)中,該具有嵌入式系統(tǒng)的終端上可以具有監(jiān)控進(jìn)程,該監(jiān)控進(jìn)程用于監(jiān)控該終端上嵌入式系統(tǒng)的工作狀態(tài),具體可以包括嵌入式系統(tǒng)內(nèi)核的工作狀態(tài),以及嵌入式系統(tǒng)中業(yè)務(wù)進(jìn)程的工作狀態(tài)。
如下,具體說(shuō)明監(jiān)控進(jìn)程是如何監(jiān)控嵌入式系統(tǒng)中業(yè)務(wù)進(jìn)程的工作狀態(tài)的:
在本申請(qǐng)中,終端可以基于預(yù)設(shè)的看門狗機(jī)制獲取嵌入式系統(tǒng)中業(yè)務(wù)進(jìn)程被掛起的時(shí)長(zhǎng),若該被掛起的時(shí)長(zhǎng)達(dá)到預(yù)設(shè)的時(shí)長(zhǎng)閾值,例如1分鐘,則可以確定該業(yè)務(wù)進(jìn)程發(fā)生異常。
具體的,在本申請(qǐng)中,該具有嵌入式系統(tǒng)的終端可以具有看門狗機(jī)制,即該終端的硬件上可以包括一個(gè)定時(shí)器電路,該定時(shí)器電路具有一個(gè)輸入端和一個(gè)輸出端,并且預(yù)設(shè)有一個(gè)超時(shí)時(shí)間,例如2分鐘?;诳撮T狗機(jī)制,若在2分鐘內(nèi),定時(shí)電路的輸入端一直沒(méi)有輸入,則定時(shí)器電路的輸出端可以輸出一個(gè)復(fù)位信號(hào),使得終端CPU斷電重啟。
在業(yè)務(wù)進(jìn)程啟動(dòng)后,可以每間隔固定時(shí)間,例如5秒鐘向定時(shí)器電路的輸入端輸入信號(hào)(通常稱為喂狗操作),并且每輸入一次信號(hào),可以在內(nèi)存文件系統(tǒng)中創(chuàng)建臨時(shí)文件,以標(biāo)識(shí)喂狗操作。
監(jiān)控進(jìn)程則可以每間隔該固定時(shí)間,查看內(nèi)存文件系統(tǒng)中是否存在用于標(biāo)識(shí)喂狗操作的臨時(shí)文件,若內(nèi)存文件系統(tǒng)中存在該臨時(shí)文件,則監(jiān)控進(jìn)程可以將該臨時(shí)文件從內(nèi)存文件系統(tǒng)中刪除;若不存在該臨時(shí)文件,則監(jiān)控進(jìn)程可以將預(yù)設(shè)的計(jì)數(shù)器加1,該預(yù)設(shè)的計(jì)數(shù)器初始值為0。
后續(xù),若通過(guò)該計(jì)數(shù)器的值,確定業(yè)務(wù)進(jìn)程已持續(xù)預(yù)設(shè)的時(shí)長(zhǎng)閾值未向定時(shí)器電路的輸入端輸入信號(hào),例如,當(dāng)確定該計(jì)數(shù)器的值達(dá)到12時(shí),認(rèn)為該業(yè)務(wù)進(jìn)程已持續(xù)預(yù)設(shè)的時(shí)長(zhǎng)閾值,例如1分鐘(12*5秒=1分鐘)未向定時(shí)器電路的輸入端輸入信號(hào),此時(shí),可以認(rèn)為該業(yè)務(wù)進(jìn)程發(fā)生異常。
需要說(shuō)明的是,上述所描述的預(yù)設(shè)的時(shí)長(zhǎng)閾值小于看門狗機(jī)制中的超時(shí)時(shí)長(zhǎng)。
在本申請(qǐng)中,若監(jiān)控到嵌入式系統(tǒng)正常工作,則執(zhí)行步驟S103;若監(jiān)控到嵌入式系統(tǒng)發(fā)生異常,包括嵌入式系統(tǒng)的內(nèi)核發(fā)生異常和嵌入式系統(tǒng)中的業(yè)務(wù)進(jìn)程發(fā)生異常,則執(zhí)行步驟S104。
步驟S103:將日志信息寫入內(nèi)存文件系統(tǒng),結(jié)束流程。
在內(nèi)存文件系統(tǒng)中,為了避免日志信息不斷增多,導(dǎo)致內(nèi)存文件系統(tǒng)容量溢出,可以在內(nèi)存文件系統(tǒng)中維護(hù)兩個(gè)日志文件,例如分別為日志文件1和日志文件2。當(dāng)嵌入式設(shè)備向內(nèi)存文件系統(tǒng)寫入日志信息時(shí),首先確定日志文件1的大小是否超過(guò)預(yù)設(shè)文件大小閾值,若確定日志文件1的大小還未超過(guò)預(yù)設(shè)文件大小閾值,則可以將該日志信息寫入日志文件1;若日志文件1的大小已達(dá)到預(yù)設(shè)文件大小閾值,則可以將當(dāng)前的日志文件1重命名為日志文件2,并新建一個(gè)日志文件,將該日志文件命名為日志文件1,將該日志信息寫入日志文件1。
步驟S104:將日志信息寫入Flash文件系統(tǒng)。
如下,首先對(duì)嵌入式系統(tǒng)的內(nèi)核發(fā)生異常的情況進(jìn)行說(shuō)明:
在本申請(qǐng)中,可以在嵌入式設(shè)備中預(yù)設(shè)Pstore(persistent storage,持久存儲(chǔ))機(jī)制,該P(yáng)store機(jī)制可以提供一套通用的接口來(lái)存儲(chǔ)異常信息。在嵌入式設(shè)備中預(yù)設(shè)Pstore機(jī)制的過(guò)程中,首先初始化一個(gè)Pstore_info類型的結(jié)構(gòu)體變量,然后調(diào)用int Pstore_register(struct Pstore_info*)注冊(cè),之后,注冊(cè)一個(gè)名字為ramoops的platform_device結(jié)構(gòu),在該結(jié)構(gòu)中,platform_data指向一個(gè)類型為ramoops_platform_data的變量地址,用于指示保存異常信息的內(nèi)存地址及大小。
當(dāng)監(jiān)控進(jìn)程獲取到的工作狀態(tài)表示嵌入式系統(tǒng)的內(nèi)核發(fā)生異常時(shí),嵌入式設(shè)備可以將獲取到的日志信息寫入Pstore機(jī)制中所指向的內(nèi)存空間中,之后,在嵌入式系統(tǒng)由于內(nèi)核發(fā)生異常重啟之后,再將內(nèi)存空間中的日志信息進(jìn)行壓縮,將壓縮后的日志信息寫入Flash文件系統(tǒng)。
其次,對(duì)嵌入式系統(tǒng)中的業(yè)務(wù)進(jìn)程發(fā)生異常的情況進(jìn)行說(shuō)明:
當(dāng)監(jiān)控進(jìn)程獲取到的工作狀態(tài)表示嵌入式系統(tǒng)中的業(yè)務(wù)進(jìn)程發(fā)生異常時(shí),嵌入式設(shè)備可以將內(nèi)存文件系統(tǒng)中的日志信息壓縮,將壓縮后的日志信息寫入Flash文件系統(tǒng)。
由上述描述可知,在監(jiān)控進(jìn)程獲取嵌入式系統(tǒng)中的業(yè)務(wù)進(jìn)程發(fā)生異常的過(guò)程中,所用到的時(shí)長(zhǎng)閾值小于看門狗機(jī)制中的超時(shí)時(shí)長(zhǎng),從而可以實(shí)現(xiàn)在CPU斷電重啟之前,將內(nèi)存文件系統(tǒng)中的日志信息寫入Flash文件系統(tǒng),以避免內(nèi)存文件系統(tǒng)中的日志信息由于CPU斷電重啟而丟失。
此外,在本申請(qǐng)中,若日志信息所標(biāo)識(shí)的事件屬于預(yù)設(shè)的關(guān)鍵事件,則可以將該日志信息寫入Flash文件系統(tǒng),以持久保存該日志信息,這里所說(shuō)的關(guān)鍵事件通??梢园ㄏ到y(tǒng)重啟、斷網(wǎng)等嚴(yán)重影響業(yè)務(wù)的事件。
由上述實(shí)施例可見,由于在嵌入式系統(tǒng)正常工作時(shí),將獲取到的日志信息寫入內(nèi)存文件系統(tǒng),在嵌入式系統(tǒng)發(fā)生異常時(shí),將獲取到的日志信息寫入Flash文件系統(tǒng),從而大大減少了將日志信息寫入Flash文件系統(tǒng)的次數(shù),避免由于頻繁地向Flash文件系統(tǒng)寫入日志信息而減少Flash文件系統(tǒng)的使用壽命;并且,可以有效地保存記錄有嵌入式設(shè)備運(yùn)行過(guò)程中出現(xiàn)的異常信息的日志信息,以便于用戶根據(jù)日志信息定位故障、分析異常原因等。
與前述日志管理方法的實(shí)施例相對(duì)應(yīng),本申請(qǐng)還提供了日志管理裝置的實(shí)施例。
本申請(qǐng)日志管理裝置的實(shí)施例可以應(yīng)用在具有嵌入式系統(tǒng)的終端上。裝置實(shí)施例可以通過(guò)軟件實(shí)現(xiàn),也可以通過(guò)硬件或者軟硬件結(jié)合的方式實(shí)現(xiàn)。以軟件實(shí)現(xiàn)為例,作為一個(gè)邏輯意義上的裝置,是通過(guò)其所在終端的處理器將非易失性存儲(chǔ)器中對(duì)應(yīng)的計(jì)算機(jī)程序指令讀取到內(nèi)存中運(yùn)行形成的。從硬件層面而言,如圖2所示,為本申請(qǐng)日志管理裝置所在終端的一種硬件結(jié)構(gòu)圖,除了圖2所示的處理器21、內(nèi)存22、網(wǎng)絡(luò)接口23、以及非易失性存儲(chǔ)器24之外,實(shí)施例中裝置所在的終端通常根據(jù)該終端的實(shí)際功能,還可以包括其他硬件,對(duì)此不再贅述。
請(qǐng)參考圖3,為本申請(qǐng)日志管理裝置的一個(gè)實(shí)施例框圖,該裝置可以應(yīng)用在具有嵌入式系統(tǒng)的終端上,所述嵌入式系統(tǒng)掛載有內(nèi)存文件系統(tǒng),例如tmpfs文件系統(tǒng)和Flash文件系統(tǒng),例如JFFS2文件系統(tǒng),該裝置可以包括:信息獲取模塊31、狀態(tài)獲取模塊32、存儲(chǔ)處理模塊33。
其中,該信息獲取模塊31,可以用于獲取所述嵌入式系統(tǒng)的日志信息;
該狀態(tài)獲取模塊32,可以用于獲取所述嵌入式系統(tǒng)的工作狀態(tài);
該存儲(chǔ)處理模塊33,可以用于若所述工作狀態(tài)表示所述嵌入式系統(tǒng)正常運(yùn)行,則將所述日志信息寫入所述內(nèi)存文件系統(tǒng);若所述工作狀態(tài)表示所述嵌入式系統(tǒng)中發(fā)生異常,則將所述日志信息寫入所述Flash文件系統(tǒng)。
在一實(shí)施例中,所述裝置還可以包括(圖3中并未示出):
事件確定模塊,可以用于確定所述日志信息所標(biāo)識(shí)的事件;
所述存儲(chǔ)處理模塊還可以用于:若所述事件屬于預(yù)設(shè)的關(guān)鍵事件,則將所述日志信息寫入所述Flash文件系統(tǒng)。
在一實(shí)施例中,所述嵌入式系統(tǒng)中發(fā)生異常可以包括:所述嵌入式系統(tǒng)的內(nèi)核發(fā)生異常、所述嵌入式系統(tǒng)中的業(yè)務(wù)進(jìn)程發(fā)生異常。
在一實(shí)施例中,當(dāng)所述工作狀態(tài)表示所述嵌入式系統(tǒng)的內(nèi)核發(fā)生異常時(shí),所述存儲(chǔ)處理模塊可以包括(圖3中并未示出):
第一存儲(chǔ)子模塊,可以用于基于預(yù)設(shè)的Pstore機(jī)制,將所述日志信息寫入預(yù)設(shè)的內(nèi)存空間中;
第一壓縮子模塊,可以用于在所述嵌入式系統(tǒng)重啟之后,將所述內(nèi)存空間中的所述日志信息壓縮;
第二存儲(chǔ)子模塊,可以用于將壓縮后的所述日志信息寫入所述Flash文件系統(tǒng)。
在一實(shí)施例中,當(dāng)所述工作狀態(tài)表示所述嵌入式系統(tǒng)中的業(yè)務(wù)進(jìn)程發(fā)生異常時(shí),所述存儲(chǔ)處理模塊33可以包括(圖3中并未示出):
第二壓縮子模塊,可以用于將內(nèi)存文件系統(tǒng)中的所述日志信息壓縮;
第三存儲(chǔ)子模塊,可以用于將壓縮后的所述日志信息寫入所述Flash文件系統(tǒng)。
上述裝置中各個(gè)單元的功能和作用的實(shí)現(xiàn)過(guò)程具體詳見上述方法中對(duì)應(yīng)步驟的實(shí)現(xiàn)過(guò)程,在此不再贅述。
對(duì)于裝置實(shí)施例而言,由于其基本對(duì)應(yīng)于方法實(shí)施例,所以相關(guān)之處參見方法實(shí)施例的部分說(shuō)明即可。以上所描述的裝置實(shí)施例僅僅是示意性的,其中所述作為分離部件說(shuō)明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個(gè)地方,或者也可以分布到多個(gè)網(wǎng)絡(luò)單元上??梢愿鶕?jù)實(shí)際的需要選擇其中的部分或者全部模塊來(lái)實(shí)現(xiàn)本申請(qǐng)方案的目的。本領(lǐng)域普通技術(shù)人員在不付出創(chuàng)造性勞動(dòng)的情況下,即可以理解并實(shí)施。
以上所述僅為本申請(qǐng)的較佳實(shí)施例而已,并不用以限制本申請(qǐng),凡在本申請(qǐng)的精神和原則之內(nèi),所做的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本申請(qǐng)保護(hù)的范圍之內(nèi)。