YAFFS全称‘Yet another flash file system’,是与jffs2,yaffs2,logfs,ubifs等齐名的一个开源闪存文件系统,是专门为NAND闪存设计的,它的出现使得价格低廉的NAND闪存芯片具有了高效性和健壮性。
YAFFS2 是Aleph1的工程师Charles Manning 开发的NAND Flash 文件系统。YAFFS1和YAFFS2 主要差异还是在于PAGE 读写 size的大小,YAFFS2可支持到2K per page, 远高于YAFFS的512 Bytes, 因此对大容量NAND flash更具优势。其他与YAFFS1不同的是, YAFFS2不再写spare area, sequenceNumber 用29 bits 表示。Yaffs2还拥有YAFFS1所缺乏的SuperBlock, 因此YAFFS1严重依赖文件系统的read_super。
目前YAFFS 和YAFFS2 皆遵守GNU GPL开放原始码。Android 采用yaffs2作为MTD NAND flash文件系统,位于fs/yaffs2/目录下。
YAFFS文件系统性能优越且易于移植,已经成功应用于linux、uClinux和Windows CE等嵌入式操作系统上。 YAFFS是目前为止唯一一个专门为NAND flash设计的文件系统,目前有YAFFS 和YAFFS2 两个版本,两个版本的主要区别之一在于YAFFS2 能够更好的支持大容量的NAND FLASH芯片。
Yaffs2特点
1.专门为NAND Flash设计的嵌入式文件系统,适用于大容量的存储设备。
2.日志文件系统。日志文件系统的设计思想是跟踪文件系统的变化而不是文件内容的变化。
3.YAFFS文件系统分为文件系统管理层接口、YAFFS内部实现层和NAND接口层,这简化了与系统的接口设计,便于集成到系统中去。
4.它为日志文件系统提供了损耗平衡和掉电保护,保证数据在系统对文件系统修改的过程中发生意外而不被破坏。
5.YAFFS2实现对大页的支持。同时, YAFFS2在内存空间占用 、垃圾回收速度、读/写速度等方面均有大幅提升。
声明: 此文观点不代表本站立场;转载须要保留原文链接;版权疑问请联系我们。