1.3 YAFFS2
用于RAW Flash:
良好的安装时间
良好的读写性能
缺点:不压缩,不在主线Linux内核中
1.4. UBIFS
用于RAW Flash:
优势:
良好的读写性能(类似于YAFFS2)
其他优点:更好的磨损均衡(不仅可以在单个分区内,而且可以在整个UBI空间中使用)。
缺点:
不适用于小型分区(元数据开销过多)。请改用JFFS2或JAFFS2。
挂载时间不是很好,因为初始化UBI需要时间(UBI Attach:在引导时或在用户空间中运行ubi_attach)。
由Linux 3.7中引入的UBI Fastmap解决。
1.5. UBI Fastmap如何工作
UBI 加载:需要通过扫描所有擦除块来读取UBI元数据。时间与存储空间成正比。
UBI Fastmap将此类信息存储在几个闪存块中(通常在系统关闭期间在UBI分离时),并在引导时找到该信息。
这样可使UBI附加时间恒定。
如果Fastmap信息无效(例如,不正常的系统关闭),它将退回到扫描状态(速度较慢,但能保证正确,Fastmap在下次启动时将恢复)。
详细信息:Thomas Gleixner的ELCE 2012演讲:
http://elinux.org/images/a/ab/UBI_Fastmap.pdf
使用步骤:
使用CONFIG_UBI_FASTMAP配置编译内核
使用ubi.fm_autoconvert = 1内核参数至少引导一次系统。
以干净的方式重启系统
保证如上启动一次后可以删除ubi.fm_autoconvert = 1
UBI Fastmap性能测试举例:
在Linux 3.10的Microchip SAMA5D3 Xplained板(ARM)上测得
UBI空间:216 MB
根文件系统:已使用80 MB(Yocto)
平均加载时间:
无UBI Fastmap,加载时间:968ms
有UBI Fastmap,加载时间:238 ms
可见UBI Fastmap 改善非常显著!
1.6. ubiblock + SquashFS
对RAW Flash :