不同文件系统的比较
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
几种文件系统比较
嵌入式系统中比较常用的文件系统为JFFS、JFFS2、CRAMFS和YAFFS。
J f f s2:日志闪存文件系统版本2(J o u r n a l l i n g F l a s h F i l e S y s t e m v2)
JFFS2主要应用于NOR Flash,可读写,支持数据压缩,安全保护等
特点。存储空间已满或接近满时,JFFS2文件系统的运行速度却由于垃
圾收集的原因而放慢。不适合用于NAND Flash,NAND Flash的容量一
般比较大,JFFS2文件系统为维护日志节点所占用的内存空间也迅速增大,因此JFFS2在挂载时需要很长时间来扫描整个FLASH的内容,用以找出所有的日志节点并建立文件结构,这样就会极大的降低系统的运行
效率。
y a f f s:Y e t A n o t h e r F l a s h F i l e S y s t e m
yaffs/yaffs2是专为嵌入式系统使用NAND型闪存而设计的日
志型文件系统。不支持数据压缩,速度快,挂载时间很短,对内存
的占用较小。支持跨平台。yaffs/yaffs2自带NAND芯片的驱动,
并且为嵌入式系统提供了直接访问文件系统的API。yaffs仅支持
小页(512 Bytes) NAND闪存,yaffs2可支持大页(2KB) NAND闪存。
同时,yaffs2在内存空间占用、垃圾回收速度、读/写速度等方面
均有大幅提升。
C r a m f s C o m p r e s s e d R O M F i l e S y s t e m
是一种只读的压缩文件系统。它也基于MTD驱动程序。降低
了系统成本。以压缩方式存储,在运行时解压缩,不支持应用程序
以XIP方式运行,需要将程序拷到RAM里去运行,它的效率高,速
度快,其只读的特点保护文件系统免受破坏,提高了系统的可靠性。
R o m f s
文件系统是一种简单的只读文件系统,不支持动态擦写,按顺
序存放数据,因而支持应用程序以XIP片内运行方式运行,在系统
运行时,节省RAM空间。uClinux系统通常采用Romfs文件系统。
Ramdisk不是一个实际的文件系统,而是一种将实际的文件系
统装入内存的机制,并且可以作为根文件系统。Ramdisk将一些
经常被访问而又不会更改的文件放在内存中,用以提高系统的性能。
R a m f s
是基于内存的文件系统,工作于虚拟文件系统(VFS)层,不能格式化,在创建时可以指定其最大能使用的内存大小,文件系统大小可随所
含文件内容大小变化。所有的文件都放在RAM中,存储一些临时性的数据,读写操作都通过ramfs,避免了对Flash存储器的读写损耗,也提高了数据读写速度。
N F S N e t w o r k F i l e S y s t e m
在不同机器、不同操作系统之间通过网络共享文件的技术。在嵌入式L i n u x系统的开发调试阶段,可以利用该技术在主机上建立基于N F S的根文件系统,挂载到嵌入式设备,可以很方便地修改根文件系统的内容。
ext2、ext3、vfat、ntfs、iso9660、jffs、romfs和nfs等,为了对各类文件系统进行统一管理,Linux引入了虚拟文件系统VFS(Virtual File System),为各类文件系统提供一个统一的操作界面和应用编程接口。