简介
JFFS2 是 RedHat 的 David Woodhouse 在 JFFS 基础上改进的文件系统,是用于微型嵌入式设备的原始闪存芯片的实际文件系统。 JFFS2 文件系统是日志结构化的可读写的文件系统。
JFFS2 的优缺点如下:
优点
使用了压缩的文件格式。最重要的特性是可读写操作。
缺点
JFFS2 文件系统挂载时需要扫描整个 JFFS2 文件系统,因此当 JFFS2 文件系统分区增大时,挂载时间也会相应的变长。使用 JFFS2 格式可能带来少量的 Flash 空间的浪费。这主要是由于日志文件的过度开销和用于回收系统的无用存储单元,浪费的空间大小大致是若干个数据段。 JFFS2 的另一缺点是当文件系统已满或接近满时, JFFS2 运行速度会迅速降低。这是因为垃圾收集的问题。
加载 JFFS2 文件系统时的步骤如下:
步骤 1. 扫描整个芯片,对日志节点进行校验,并且将日志节点全部装入内存缓存。
步骤 2. 对所有日志节点进行整理,抽取有效的节点并整理出文件目录信息。
步骤 3. 找出文件系统中无效节点并且将它们删除。
步骤 4. 最后整理内存中的信息,将加载到缓存中的无效节点释放。
压缩性
通过du命令查看当前log文件压缩之前占用的空间大小:
![](https://img-blog.csdnimg.cn/img_convert/e31d3fcbcbcd45392faac67d28e9a4b0.png)
用df查看压缩之后占用的空间大小:
![](https://img-blog.csdnimg.cn/img_convert/680d6ac5a3c4569d37bc1c9773274db9.png)