[发明专利]一种文件系统修复方法、装置及系统在审
申请号: | 201510058138.1 | 申请日: | 2015-02-04 |
公开(公告)号: | CN104598328A | 公开(公告)日: | 2015-05-06 |
发明(设计)人: | 曹海浪;刘永阳;李龙;杨卫峰;粟爱军;肖家博;郝波 | 申请(专利权)人: | 南车株洲电力机车研究所有限公司 |
主分类号: | G06F11/07 | 分类号: | G06F11/07;G06F17/30 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 王宝筠 |
地址: | 412001 湖*** | 国省代码: | 湖南;43 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 文件系统 修复 方法 装置 系统 | ||
技术领域
本申请涉及嵌入式技术领域,特别是涉及一种文件系统修复方法、装置及系统。
背景技术
vxWorks操作系统的TFFS,是True Flash File System的简称,是在vxWorks系统的存储器FLASH设备上构造的一个基于DOS的文件系统,它为种类繁多的FLASH存储设备提供了统一的块设备接口,并且具有可重入、线程安全等特点,支持大多数CPU构架。vxWorks系统对TFFS的读写非常简便,通常使用TFFS文件系统存放文件,如操作系统映像、应用程序、配置文件或者用以保存系统运行过程中的数据信息等文件。
TFFS文件系统存在容易损坏的问题,当出现异常操作,比如在写文件的时候掉电等,会导致TFFS文件系统中的文件损坏。对于TFFS文件系统中文件损坏的情形,vxWorks系统函数提供了chkdsk()函数接口,通常修复TFFS文件系统损坏的方法是调用vxWorks系统函数chkdsk()对文件系统进行修复,该函数根据所输入参数的不同,能够检查TFFS文件系统是否损坏,也能够对文件系统进行修复。
但是,该系统函数在修复TFFS文件系统的过程中,会将损坏的文件直接删除,这样会导致虽然文件系统被修复了,但是损坏的文件中的所有数据全部丢失,对于一些重要文件比如存放记录信息的文件,这种文件系统修复方法会造成很大损失。
发明内容
有鉴于此,本申请提供一种文件系统修复方法、装置及系统,以在对文件系统进行自动修复时恢复其中的损坏文件,从而最大程度的降低文件系统中文件损坏所带来的数据丢失的损失。
为了实现上述目的,本申请实施例提供的技术方案如下:
一种文件系统修复方法,包括:
检测被损坏的文件系统中的损坏文件,将所述损坏文件读取到内存中;
调用系统接口函数chkdsk()对被损坏的文件系统进行修复;
将读取到内存中的损坏文件写入到修复完成的文件系统中,完成所述损坏文件的数据恢复。
优选地,所述检测被损坏的文件系统中的损坏文件,将所述损坏文件读取到内存中,包括:
调用系统接口函数chkdsk()检测被损坏的文件系统中是否有损坏文件;
若存在损坏文件,则按照字节依次获取每个损坏文件的文件信息、文件名以及文件个数,并将每个损坏文件的文件信息、文件名以及文件个数保存到内存中。
优选地,在所述将读取到内存中的损坏文件写入到修复完成的文件系统中,完成所述损坏文件的数据恢复之后,还包括:
释放所述内存的存储空间。
一种文件系统修复装置,包括:
检测模块,与所述检测模块相连接的修复模块,与所述修复模块相连接的写入模块;
所述检测模块检测被损坏的文件系统中的损坏文件,将所述损坏文件读取到内存中;
所述修复模块调用系统接口函数chkdsk()对被损坏的文件系统进行修复;
所述写入模块将读取到内存中的损坏文件写入到修复完成的文件系统中,完成所述损坏文件的数据恢复。
优选地,所述检测模块,包括:
检测单元,与所述检测单元相连接的获取单元;
所述检测单元调用系统接口函数chkdsk()检测被损坏的文件系统中是否有损坏文件;
所述获取单元在所述检测单元判断出存在损坏文件时,按照字节依次获取每个损坏文件的文件信息、文件名以及文件个数,并将每个损坏文件的文件信息、文件名以及文件个数保存到内存中。
优选地,还包括:
与所述写入模块相连接的释放模块,所述释放模块在所述写入模块将读取到内存中的损坏文件写入到修复完成的文件系统中,完成所述损坏文件的数据恢复后,释放所述内存的存储空间。
一种文件系统修复系统,包括:
文件系统修复装置和与所述文件系统修复装置相连接的内存;
所述文件系统修复装置包括:
检测模块,与所述检测模块相连接的修复模块,与所述修复模块相连接的写入模块;
所述检测模块检测被损坏的文件系统中的损坏文件,将所述损坏文件读取到内存中;
所述修复模块调用系统接口函数chkdsk()对被损坏的文件系统进行修复;
所述写入模块将读取到内存中的损坏文件写入到修复完成的文件系统中,完成所述损坏文件的数据恢复。
优选地,所述检测模块,包括:
检测单元,与所述检测单元相连接的获取单元;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南车株洲电力机车研究所有限公司;,未经南车株洲电力机车研究所有限公司;许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510058138.1/2.html,转载请声明来源钻瓜专利网。