[發(fā)明專利]一種文件系統(tǒng)修復方法、裝置及系統(tǒng)在審
| 申請?zhí)枺?/td> | 201510058138.1 | 申請日: | 2015-02-04 |
| 公開(公告)號: | CN104598328A | 公開(公告)日: | 2015-05-06 |
| 發(fā)明(設(shè)計)人: | 曹海浪;劉永陽;李龍;楊衛(wèi)峰;粟愛軍;肖家博;郝波 | 申請(專利權(quán))人: | 南車株洲電力機車研究所有限公司 |
| 主分類號: | G06F11/07 | 分類號: | G06F11/07;G06F17/30 |
| 代理公司: | 北京集佳知識產(chǎn)權(quán)代理有限公司 11227 | 代理人: | 王寶筠 |
| 地址: | 412001 湖*** | 國省代碼: | 湖南;43 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 文件系統(tǒng) 修復 方法 裝置 系統(tǒng) | ||
技術(shù)領(lǐng)域
本申請涉及嵌入式技術(shù)領(lǐng)域,特別是涉及一種文件系統(tǒng)修復方法、裝置及系統(tǒng)。
背景技術(shù)
vxWorks操作系統(tǒng)的TFFS,是True?Flash?File?System的簡稱,是在vxWorks系統(tǒng)的存儲器FLASH設(shè)備上構(gòu)造的一個基于DOS的文件系統(tǒng),它為種類繁多的FLASH存儲設(shè)備提供了統(tǒng)一的塊設(shè)備接口,并且具有可重入、線程安全等特點,支持大多數(shù)CPU構(gòu)架。vxWorks系統(tǒng)對TFFS的讀寫非常簡便,通常使用TFFS文件系統(tǒng)存放文件,如操作系統(tǒng)映像、應(yīng)用程序、配置文件或者用以保存系統(tǒng)運行過程中的數(shù)據(jù)信息等文件。
TFFS文件系統(tǒng)存在容易損壞的問題,當出現(xiàn)異常操作,比如在寫文件的時候掉電等,會導致TFFS文件系統(tǒng)中的文件損壞。對于TFFS文件系統(tǒng)中文件損壞的情形,vxWorks系統(tǒng)函數(shù)提供了chkdsk()函數(shù)接口,通常修復TFFS文件系統(tǒng)損壞的方法是調(diào)用vxWorks系統(tǒng)函數(shù)chkdsk()對文件系統(tǒng)進行修復,該函數(shù)根據(jù)所輸入?yún)?shù)的不同,能夠檢查TFFS文件系統(tǒng)是否損壞,也能夠?qū)ξ募到y(tǒng)進行修復。
但是,該系統(tǒng)函數(shù)在修復TFFS文件系統(tǒng)的過程中,會將損壞的文件直接刪除,這樣會導致雖然文件系統(tǒng)被修復了,但是損壞的文件中的所有數(shù)據(jù)全部丟失,對于一些重要文件比如存放記錄信息的文件,這種文件系統(tǒng)修復方法會造成很大損失。
發(fā)明內(nèi)容
有鑒于此,本申請?zhí)峁┮环N文件系統(tǒng)修復方法、裝置及系統(tǒng),以在對文件系統(tǒng)進行自動修復時恢復其中的損壞文件,從而最大程度的降低文件系統(tǒng)中文件損壞所帶來的數(shù)據(jù)丟失的損失。
為了實現(xiàn)上述目的,本申請實施例提供的技術(shù)方案如下:
一種文件系統(tǒng)修復方法,包括:
檢測被損壞的文件系統(tǒng)中的損壞文件,將所述損壞文件讀取到內(nèi)存中;
調(diào)用系統(tǒng)接口函數(shù)chkdsk()對被損壞的文件系統(tǒng)進行修復;
將讀取到內(nèi)存中的損壞文件寫入到修復完成的文件系統(tǒng)中,完成所述損壞文件的數(shù)據(jù)恢復。
優(yōu)選地,所述檢測被損壞的文件系統(tǒng)中的損壞文件,將所述損壞文件讀取到內(nèi)存中,包括:
調(diào)用系統(tǒng)接口函數(shù)chkdsk()檢測被損壞的文件系統(tǒng)中是否有損壞文件;
若存在損壞文件,則按照字節(jié)依次獲取每個損壞文件的文件信息、文件名以及文件個數(shù),并將每個損壞文件的文件信息、文件名以及文件個數(shù)保存到內(nèi)存中。
優(yōu)選地,在所述將讀取到內(nèi)存中的損壞文件寫入到修復完成的文件系統(tǒng)中,完成所述損壞文件的數(shù)據(jù)恢復之后,還包括:
釋放所述內(nèi)存的存儲空間。
一種文件系統(tǒng)修復裝置,包括:
檢測模塊,與所述檢測模塊相連接的修復模塊,與所述修復模塊相連接的寫入模塊;
所述檢測模塊檢測被損壞的文件系統(tǒng)中的損壞文件,將所述損壞文件讀取到內(nèi)存中;
所述修復模塊調(diào)用系統(tǒng)接口函數(shù)chkdsk()對被損壞的文件系統(tǒng)進行修復;
所述寫入模塊將讀取到內(nèi)存中的損壞文件寫入到修復完成的文件系統(tǒng)中,完成所述損壞文件的數(shù)據(jù)恢復。
優(yōu)選地,所述檢測模塊,包括:
檢測單元,與所述檢測單元相連接的獲取單元;
所述檢測單元調(diào)用系統(tǒng)接口函數(shù)chkdsk()檢測被損壞的文件系統(tǒng)中是否有損壞文件;
所述獲取單元在所述檢測單元判斷出存在損壞文件時,按照字節(jié)依次獲取每個損壞文件的文件信息、文件名以及文件個數(shù),并將每個損壞文件的文件信息、文件名以及文件個數(shù)保存到內(nèi)存中。
優(yōu)選地,還包括:
與所述寫入模塊相連接的釋放模塊,所述釋放模塊在所述寫入模塊將讀取到內(nèi)存中的損壞文件寫入到修復完成的文件系統(tǒng)中,完成所述損壞文件的數(shù)據(jù)恢復后,釋放所述內(nèi)存的存儲空間。
一種文件系統(tǒng)修復系統(tǒng),包括:
文件系統(tǒng)修復裝置和與所述文件系統(tǒng)修復裝置相連接的內(nèi)存;
所述文件系統(tǒng)修復裝置包括:
檢測模塊,與所述檢測模塊相連接的修復模塊,與所述修復模塊相連接的寫入模塊;
所述檢測模塊檢測被損壞的文件系統(tǒng)中的損壞文件,將所述損壞文件讀取到內(nèi)存中;
所述修復模塊調(diào)用系統(tǒng)接口函數(shù)chkdsk()對被損壞的文件系統(tǒng)進行修復;
所述寫入模塊將讀取到內(nèi)存中的損壞文件寫入到修復完成的文件系統(tǒng)中,完成所述損壞文件的數(shù)據(jù)恢復。
優(yōu)選地,所述檢測模塊,包括:
檢測單元,與所述檢測單元相連接的獲取單元;
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于南車株洲電力機車研究所有限公司;,未經(jīng)南車株洲電力機車研究所有限公司;許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201510058138.1/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。





