首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

NAND flash文件系统JFFS和YAFFS比较

NAND flash文件系统JFFS和YAFFS比较

[url=]JFFS是由瑞典的Axis Communications Ab公司开发的(1999,GNU发布),针对flash设备的特性为嵌入式设备开发的.[/url]JFFS1JFFS2的设计中都考虑到了FLASH的特性特别是满足了上述3个条件,包括了垃圾回收,坏块管理等功能. 这两种文件系统属于LFS(Log-structured File System).这种文件系统的特点是一旦数据出错,容易恢复,但是系统运行是需要占用一定的内存空间,这些空间就是用来存储”log”.
JFFS的缺点就是加载时间太长,因为每次加载都需要将FLASH上的所有节点(JFFS的存储单位)到内存,这样也占用了可观的内存空间.除此之外,”circle log”设计使得在对文件数据进行所有的数据都会被重写,这样造成不必要的时间,同时也会减少FLASH的寿命.
JFFS2JFFS1作了些改进,比如所需的内存变少了,垃圾回收机制也优化了.
针对JFFS1,JFFS2的缺点,JFFS3出现了.
YAFFS1 & YAFFS2Yet Another Flash File System”作者是新西兰的Charles Manning为一家名叫Alpha one 的公司(http://www.aleph1.co.uk/)设计的,是第一个为NAND Flash设计的文件系统.共两个版本YAFFS1 YAFFS2.
YAFFS1支持512Bytes/PageNAND Flash;后者YAFFS2支持2kBytes/PageNAND Flash. YAFFS文件系统也属于LFS.
跟其他文件系统比较,它具有更好的可移植性,甚至可以使用在没有操作系统的设备上(called “YAFFS/Direct”). YAFFS采用模块化设计,虽然最初是用在linux系统上的,但是也已经移植到其他系统比如wince.
还有个突出的优点是它在mount的时候需要很少的内存.(如果是小页—512byte/page,1MByte NAND大约需要4KBytes内存;大页需要大概1KBytes RAM/1MByte NAND)
JFFSYAFFS比较,两者各有长处. 一般来说,对于小于64MBytesNAND Flash,可以选用JFFS;如果超过64MBytes,YAFFS比较合适.
继承事业,薪火相传
返回列表