Linux文件系统分类
发布时间:2009/1/4 0:00:00 访问次数:525
在flash上运行传统的文件系统,如ext2等,但是这类文件系统没有考虑flash存储器的物理特性和使用特点。例如,flash存储器中各个块的最大擦除次数是有限的,如果能够均匀地使用各个块,就能延长∏ash的整体寿命,这就需要磨损均衡的功能;为了提高flash存储器的利用率,还应该有对存储空间的碎片收集功能;在嵌入式系统中,要考虑出现系统意外掉电的情况,所以文件系统应该有掉电保护的功能,保证系统在出现意外掉电时也不会丢失数据。
linux支持多种flash文件系统,常用的主要包括:
(1)romfs,是一个只读的文件系统,它是最早支持flash的文件系统。romfs是一种基于块设备的文件系统,它是只读的,非常小巧。在linux中,它属于默认的为嵌入式系统定制的文件系统。在romfs文件系统中,文件中的所有数据都是顺序存储的,可以方便arm、coldfire等嵌入式处理器程序的运行。
romfs为根文件系统,需要读写的var和/ tmp目录采用ramfs。
(2)cramfs,是2.4系列linux内核提供的一种新的文件系统。它是一种压缩的、只读的文件系统。它主要的优势是所有存储的文件都是压缩的,而且这些文件只是在被访间到的时候才解压到ram中,而不在访问之列的文件并没有被解压到ram中。这样,cramfs能有效减少flash和ram的占用量,但不足之处是需要的指令比较多,不支持xip特性。
(3)jffs(journaling hash file system),是专门针对嵌入式系统中hash存储器的特性而设计的一种日志文件系统。它是基于nor-flash开发的文件系统,它最大的特点是支持对flash的直接读写。
(4)jffs2,是在jffs的基础之上开发的,它采用了成熟稳定的mtd技术,因此要比jffs稳定。和jffs相比,jffs2支持更多节点类型,提高了磨损均衡和碎片收集的能力,增加了对硬链接的支持。jffs2还增加了数据压缩功能,这更利于在容量较小的flash中使用。
和传统的linux文件系统如ext2相比,jffs2处理擦除和读写操作的效率更高,并且具有完善的掉电保护功能,使存储的数据更加安全。在嵌入式系统中使用jffs2文件系统的缺点很少,只是当文件系统快要满时,jffs2会放慢运行速度,这是由于碎片收集的原因导致的。
如表所示是几种常用的文件系统,其中ext2和ext3文件系统是在linux中常用的文件系统。
表 常用文件系统的表现
jffs2在linux中有两面三刀种使用方式,一种是作为根文件系统,另一种是作为普通文件系统在系统启动后被挂载,通常选用后一种方面军式。
linux下采用的文件系统构成如图所示。
图 linux下的文件系统构成
欢迎转载,信息来源维库电子市场网(www.dzsc.com)
在flash上运行传统的文件系统,如ext2等,但是这类文件系统没有考虑flash存储器的物理特性和使用特点。例如,flash存储器中各个块的最大擦除次数是有限的,如果能够均匀地使用各个块,就能延长∏ash的整体寿命,这就需要磨损均衡的功能;为了提高flash存储器的利用率,还应该有对存储空间的碎片收集功能;在嵌入式系统中,要考虑出现系统意外掉电的情况,所以文件系统应该有掉电保护的功能,保证系统在出现意外掉电时也不会丢失数据。
linux支持多种flash文件系统,常用的主要包括:
(1)romfs,是一个只读的文件系统,它是最早支持flash的文件系统。romfs是一种基于块设备的文件系统,它是只读的,非常小巧。在linux中,它属于默认的为嵌入式系统定制的文件系统。在romfs文件系统中,文件中的所有数据都是顺序存储的,可以方便arm、coldfire等嵌入式处理器程序的运行。
romfs为根文件系统,需要读写的var和/ tmp目录采用ramfs。
(2)cramfs,是2.4系列linux内核提供的一种新的文件系统。它是一种压缩的、只读的文件系统。它主要的优势是所有存储的文件都是压缩的,而且这些文件只是在被访间到的时候才解压到ram中,而不在访问之列的文件并没有被解压到ram中。这样,cramfs能有效减少flash和ram的占用量,但不足之处是需要的指令比较多,不支持xip特性。
(3)jffs(journaling hash file system),是专门针对嵌入式系统中hash存储器的特性而设计的一种日志文件系统。它是基于nor-flash开发的文件系统,它最大的特点是支持对flash的直接读写。
(4)jffs2,是在jffs的基础之上开发的,它采用了成熟稳定的mtd技术,因此要比jffs稳定。和jffs相比,jffs2支持更多节点类型,提高了磨损均衡和碎片收集的能力,增加了对硬链接的支持。jffs2还增加了数据压缩功能,这更利于在容量较小的flash中使用。
和传统的linux文件系统如ext2相比,jffs2处理擦除和读写操作的效率更高,并且具有完善的掉电保护功能,使存储的数据更加安全。在嵌入式系统中使用jffs2文件系统的缺点很少,只是当文件系统快要满时,jffs2会放慢运行速度,这是由于碎片收集的原因导致的。
如表所示是几种常用的文件系统,其中ext2和ext3文件系统是在linux中常用的文件系统。
表 常用文件系统的表现
jffs2在linux中有两面三刀种使用方式,一种是作为根文件系统,另一种是作为普通文件系统在系统启动后被挂载,通常选用后一种方面军式。
linux下采用的文件系统构成如图所示。
图 linux下的文件系统构成
欢迎转载,信息来源维库电子市场网(www.dzsc.com)
上一篇:Linux配置NFS文件系统
上一篇:Linux文件系统指标