论文部分内容阅读
嵌入式系统因为自身的特殊性,它要求嵌入式的存储设备必须体积小、而且功耗低,能防震,显然像磁盘这样传统的存储介质并不具有这些特点,因此它们不适合用在嵌入式系统中。Flash存储器成本低、存储容量大、体积小、功耗低等特性,同磁盘相比,它更适合在嵌入式系统中存储数据,目前已经成为了嵌入式移动存储平台的首选存储介质。随着嵌入式技术的不断发展和越来越广范的应用,嵌入式系统对数据存储和数据管理的要求也越来越高,近年来,不断涌现出针对Flash存储器的嵌入式文件系统,大致分为三类:一是基于块设备的嵌入式文件系统,例如FAT32和Ext2、二是通用的嵌入式文件系统,如JFFS系列,三是专用的嵌入式Flash文件系统,如YAFFS系列。第一类嵌入式文件系统实际上就是把磁盘的块设备文件系统移植到了Flash存储器;第二类嵌入式文件系统摒弃了这种思想,专门针对Flash存储器设计出的文件系统,它既可以在NOR Flash上运行同时又可以运行在NAND Flash上;第三类文件系统是专门针对NAND Flash设计的文件系统。这三类文件系统代表了嵌入式文件系统发展的三个阶段,虽然每个阶段都比前一个阶段有了不小的进步,但是基于NAND Flash的嵌入式文件系统仍存在诸多不足,如加载时间过长,对损耗均衡的考虑不充分等等。针对NAND Flash文件系统的不足之处,本论文提出了改进的办法。(1)在现有的NAND Flash文件系统中,一个闪存擦除块同时保存着文件的属性信息和数据信息,加载时要逐块扫描,来判断出那些是属性块,加载时间会随着存储容量的增大而增加。本论文改变了结点的管理方式,把文件的属性信息和数据信息分别存储于不同的擦除块中,擦除块中要么存属性信息,要么存数据信息,加载时只扫描存放着属性信息的擦除块,进而减少文件系统的加载时间;(2)现有的NAND Flash文件系统对静态数据没有很好的实现损耗均衡,本论文利用冷热数据思想,把擦除块进行分类管理,对频繁修改的属性结点和只读或者很少被修改的数据(即静态数据)同时实现了损耗均衡。根据以上提到的方法,基于已有的YAFFS文件系统,本文设计了一个新的文件系统MFFS(Modified Flash File System)。经过测试和理论分析表明,MFFS在加载时间和损耗均衡二方面的性能都较YAFFS有不同程度的提高。理论分析毕竟有考虑不全面的地方,MFFS文件系统是否确实能达到预想的效果,还需要对它进行进一步的实验验证,这一点本文做的还有所欠缺。论文中MFFS的实现对降低文件系统的加载时间和延长NAND闪存的使用寿命有一定的意义。