[发明专利]在嵌入式系统中实现文件系统的方法有效
| 申请号: | 200910188992.4 | 申请日: | 2009-12-18 |
| 公开(公告)号: | CN102103596A | 公开(公告)日: | 2011-06-22 |
| 发明(设计)人: | 彭文剑 | 申请(专利权)人: | 康佳集团股份有限公司 |
| 主分类号: | G06F17/30 | 分类号: | G06F17/30 |
| 代理公司: | 深圳市康弘知识产权代理有限公司 44247 | 代理人: | 胡朝阳;孙洁敏 |
| 地址: | 518055 广东*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 嵌入式 系统 实现 文件系统 方法 | ||
技术领域
本发明涉及文件操作方法,尤其是涉及一种在嵌入式系统中实现文件系统的方法。
背景技术
在已有的嵌入式文件系统技术中,大部分是FAT或Ext2fs文件系统,由于FAT和Ext2fs等文件系统是以IDE只支持像IDE那样的块设备,不但代码比较庞大,而且没有考虑设备擦写时序和时间要求,没有掉电保护。
而对于专用于嵌入式系统的JFFS2文件系统。除了本身比较复杂外,它主要设计应用于Linux操作系统,对Linux操作系统的运行机制依赖性比较大,因而难以移植;它是一种基于日志型的文件系统,导致了启动速度比较慢。另外JFFS2对损耗平衡是用概率的方法来解决的,这很难保证损耗平衡的确定性,在一定程度上造成了对擦写块不必要的擦写操作。
因此,目前嵌入式系统的这些文件系统过于强调通用性,而忽略了嵌入式系统对文件系统的特殊要求。在嵌入式系统中,一般要存储的文件个数不多;数据总容量不大;安全性要求比较高,要能断电保护;代码对操作系统依赖性要小,以便于移值;文件系统本身代码要简单,以节省系统资源。
发明内容
本发明提出一种在嵌入式系统中实现文件系统的方法,实现了一个可根据需要配置修改需存储文件个数和总容量,具备断电保护功能,对操作系统依赖性小便于移植,而且本身代码简单的文件系统。
本发明采用了如下技术方案来实现:一种在嵌入式系统中实现文件系统的方法,其包括步骤:
建立由若干个用于分别描述每个文件信息的文件信息结构构成文件信息区和用于存储文件的文件数据区组成的文件系统;
初始化文件系统;
通过日志的方法来建立和维护文件信息区,每次对文件进行写操作时,在将文件写入到文件数据区后,再将文件信息的记录更新至文件信息区信息。
其中,文件信息结构包括:文件长度信息、文件所占用的基本存储单位的个数、文件所占用的基本存储单元的位置信息数组。
其中,文件信息区的结构包括:日志版本号、文件信息结构数组、文件信息结构数组的校验信息、更新标识。
其中,文件系统初始化包括步骤:
获得并记录用于文件系统中文件数据区及存储器中各个区块的序号和存储容量大小的信息;
以基本存储单元获得各个区块中存储单元的状态信息建立存储单元状态数组;
获得并记录用于文件系统中文件信息区总容量、以及各个区块的序号和大小,把文件信息区按文件信息区结构为基本单位构成文件系统数据库单元数组;
遍历文件系统数据库单元数组,搜索日志版本号最大的数据库单元索引,维护该文件系统数据库单元数组中序号等于前述日志版本号最大的数据库单元索引值的数组元素所指向的文件信息区信息。
另外,对文件进行写操作的步骤包括:
判断进行写操作的数据存储单元的总容量是否大于待写入的数据长度,若是,则转入下一步骤,否则,擦除所有无效的基本数据存储单元使进行写操作的数据存储单元的总容量大于待写入的数据长度;
找到可进行写操作的数据存储单元对应的位置信息,顺序写入数据到存储单元;
在文件信息区更新文件信息。
与现有技术相比,本发明具有如下有益效果:
本发明提出了一种简单易于操作的文件系统实现方法,实现了一个可根据需要配置修改需存储文件个数和总容量;具备断电保护功能,对操作系统依赖性小便于移植,对文件读写操作效率高,并且代码小占用资源少的文件系统。
附图说明
图1是初始化文件系统的流程示意图;
图2是对文件系统写操作的流程示意图。
具体实施方式
本发明提出了一种简单易于操作的文件系统实现方法,实现了一个可根据需要配置修改需存储文件个数和总容量;具备断电保护功能,对操作系统依赖性小便于移植,对文件读写操作效率高,并且代码小占用资源少的文件系统。
本发明提出的文件系统配置如下:
1、根据具体需求确定文件系统能存储的最多文件个数FILE_NUM,及文件系统能存储的数据总容量大小MAX_SIZE。
2、根据具体需求确定文件系统的基本存储单元的容量UNIT_SIZE,一般可以为2K、4K等。如果MAX_SIZE大而FILE_NUM小,那么UNIT_SIZE可以设大点如为8K,16K等;如果MAX_SIZE小而FILE_NUM大,那么UNIT_SIZE可以设小些,如设为1K等。
3、本发明提出的文件系统由两部分组成:文件信息区和文件数据区。由个数是FILE_NUM的描述文件信息的结构构成了文件信息区,其中文件信息的结构及各成员含义如下表1所示:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于康佳集团股份有限公司,未经康佳集团股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200910188992.4/2.html,转载请声明来源钻瓜专利网。
- 上一篇:装订装置
- 下一篇:一种高效管理WAP网站调查问卷的方法





