一种新型FLASH文件系统UBI/UBIFS—-很不错的开源项目

http://www.cqumzh.cn/topic_show.php?tid=507319

UBIFS:
由IBM、nokia工程师Thomas Gleixner,Artem Bityutskiy等人于2006年发起,致力于开发性能卓越、扩展性高的FLASH专用文件系统,以解决当前嵌入式环境下以FLASH作为MTD设备使用时的技术瓶颈,

开发背景:
FLASH特性:
FLASH是一类电可擦出可编程存储体,在使用方式上与硬磁盘最大不同是:
faq/general.html
What are the differences between flash devices and hard drives?

FLASH文件系统所必须的关键技术:
1. 由于FLASH的“先擦除后写”的特性决定,必须(或者说所被公认为)采用异地更新策略(out-of-place update)。相关问题讨论可参考:
http://www.linux-mtd.infradead.org 文档 A Brief Introduction to the Design of UBIFS。

2. 采用异地更新策略就必须(或者说所被公认为)采用日志文件系统来管理。

3. 采用日志文件系统就必须(或者说所被公认为)实现垃圾回收(garbage collection)

4. 由于FLASH的物理擦除块(Physical Erase Block)只有有限次有效擦除,所以必须 (或者说所被公认为)采用“负载平衡”(我比较喜欢翻译为“损益均衡”——一个经济学术语)(Wear-Leveling)技术,即保证上的(几乎)所有PEB的擦除次数趋向于均衡化,从而避免小部分PEB大大先于其他PEB而”坏“掉。

当前嵌入式FLASH解决方案多采用:
1.  无文件系统直接使用FLASH:缺点很明显
2. 采用传统文件系统,如ext2,ext3, FAT16/32, dos,Cramfs 等:这些文件系统本来是为传统的磁盘体开发的,他们无法高效的管理以FLASH作为介质的文件系统,特别是在FLASH的使用寿命上。于是出现了第3中方案。
3. 采用FTL/NFTL(flash 转换层/nand flash转换层)+ 传统文件系统:FTL的使用就是针对FLASH的特有属性,通过硬件的方式来实现日志管理、损益均衡等技术。但实践证明,由于各方面因素导致本方案有一定的局限性。
4. FLASH专用文件系统,如JFFS1/2,YAFFS等,他们从一定程度上缓解了flash使用上的技术瓶颈。但也仍然存在诸多问题:如内存消耗大,对FLASH容量、文件系统大小、内容、访问模式等的线性依赖,损益均衡能力差活过渡损益。随作FLASH容量逐渐暴涨(我见到的资料已经有64GFLASH已经实用化),JFFS,YAFFS几乎无法管理如此大的FLASH——虽然JFFS目前还在改进中,但前途不看好,一个很好的例子JFFS的主要开发者大多倒向了UBIFS。:)
为什么要开发UBI/UBIFS:
参考
http://www.linux-mtd.infradead.org/faq/ubifs.html

UBI:一种类似于LVM的逻辑卷管理层。主要实现损益均衡,逻辑擦除块、卷管理,坏块管理等。
UBIFS:基于UBI的FLASH日志文件系统。
http://www.linux-mtd.infradead.org/faq/ubifs.html
UBIdocumentation section
UBIFSdocumentation section
中有详细阐诉。

UBI/UBIFS现状:
2007年底08年初,已经发布了linux-2.6.x的可运行的版本。但目前仍在活跃的开发中。

相关开发社区:
Send linux-mtd mailing list submissions to
        [email protected]

To subscribe or unsubscribe via the World Wide Web, visit
        http://lists.infradead.org/mailman/listinfo/linux-mtd
or, via email, send a message with subject or body 'help' to
        [email protected]

You can reach the person managing the list at
        [email protected]

邮件列表:
http://lists.infradead.org/pipermail/linux-mtd/

GIT站点(源码下载、版本管理)
http://git.infradead.org/

猜你喜欢

转载自blog.csdn.net/zhxlx/article/details/3560657
今日推荐