新闻中心

EEPW首页 > 基础知识 > 嵌入式文件系统

嵌入式文件系统

作者:李雪时间:2015-12-02来源:电子产品世界收藏

  导读:是什么?对有什么要求?目前常用的又有哪些呢?

本文引用地址:http://www.eepw.com.cn/article/283736.htm

一、嵌入式文件系统是什么

  嵌入式文件系指的是嵌入式系统所应用的文件系统。嵌入式文件系统与我们通常所用的文件系统有较大的区别:我们平时所用的文件系统大致都是相同的,但嵌入式文件系统要为嵌入式系统的设计目的服务,不同用途的嵌入式操作系统下的文件系统在许多方面各不相同。目前大多数嵌入式系统采用的都是Linux,而嵌入式Linux常用的文件系统有Ext2fs第二版扩展文件系统、JFFS文件系统、YAFFS文件系统等。

 

二、对嵌入式文件系统的要求

  1、由于嵌入式文件系统的载体是以Flash为主的存储介质,Flash的擦除次数是有限的,所以为了延长Flash的使用寿命,应该尽量减少对Flash的写入操作,尽量使对Flash的写入操作均匀分布在整个Flash上;

  2、由于各种存储器在分配使用一段时间后,会出现空缺和碎片数据,这就需要进行垃圾回收以保证存储器空间高效使用。Flash存储器以扇区为单位,垃圾回收也应该以扇区为单位,嵌入式Flash文件系统回收要先移动扇区数据,再擦除整个扇区;

  3、要求文件系统在频繁的文件操作(例如:新建、删除、截断等)下能够保持较高的读写性能,要求低碎片化;

  4、要求掉电安全,无数据的丢失现象。

三、各嵌入式文件系统比较

  Ramfs是Linus Torvalds开发的,Ramfs把所用文件都放在RAM里运行,通常存放一些临时或经常要修改的数据。不像ramdisk的固定大小,Ramfs的大小可调。

  Tmpfs是基于内存的文件系统,由于它驻留在RAM中,所以读写都在RAM中,因此读写瞬间完成。文件系统大小可变,但是重新引导数据丢失。

  JFFS2是RedHat基于JFFS开发的闪存文件系统,是一种可读、可压缩的日志型文件系统,提供崩溃/掉电安全保护,使用了基于哈希表的日志节点结构,加快了对节点操作速度,支持数据压缩,提供“写平衡”支持,是目前最流行的文件系统。缺点是由于碎片收集的问题使得文件系统已满或者接近已满时,JFFS2运行变慢。

  Yaffs是一种和jffs2类似的闪存文件系统,专为嵌入式系统使用Nand型闪存而设计的一种日志文件系统。比jffs2少了一个功能,因此速度更快,对内存要求比较小。自带Nand芯片驱动,提供了直接访问文件系统的API。用户可以直接对文件系统操作。

  嵌入式文件系统相关文章推荐阅读:

  1、嵌入式根文件系统的移植和制作详解

  2、如何选择嵌入式操作系统

  3、如何学STM32- -十年经验教你如何学习嵌入式系统

  4、基于ARM的嵌入式操作系统概述



关键词: 嵌入式文件系统

评论


技术专区

关闭