近几年来,嵌入式操作系统得到飞速的发展,从支持8位微处理器到16位、32位甚至64位,从支持单一的微处理器芯片到支持多品种微处理器芯片,从只有实时内核到除了内核外还提供其它功能模块如:高速文件系统、TCP/IP网络系统、GUI系统等。嵌入式操作系统的文件系统是指嵌入式操作系统中文件的组织与管理结构,它是嵌入式操作系统的核心。从外部看来,文件系统是一组文件和目录的操作。文件可以被读写,目录可以被创建和删除。而在内部看,文件系统却迥然不同。文件系统的设计者,必须考虑到存储区如何分配以及系统如何记录文件、使用了哪些块等。文件系统的可靠性和性能也是一个重要问题。文件系统是操作系统的核心,不同的操作系统其文件系统也不尽相同,这主要体现在文件存储空间的动态分配机制上,各种文件系统各有自己的特点。本文将介绍基于嵌入式实时操作系统的嵌入式应用实例中的文件系统的设计及实现方法。
文件系统简介目前嵌入式操作系统分商用和免费两种。在国内市场占有率一的商用操作系统是VxWorks,免费的操作系统包括。由于商用操作系统价格昂贵,所以很多的研究机构使用免费操作系统。本嵌入式系统的操作系统采用的是对研究机构免费使用的,编写的一个免费的、源码公开的嵌入式实时内核。对于开发计算机嵌入式应用产品来说是一个实用价值很高的实时嵌入式操作系统ERTOS。
文件分配表,是一个应用了几十年的商业化软件产品,文件系统技术成熟、结构简单、系统资源开销小,易于在嵌入式系统的硬件平台上实现。它不用于表示引导区、文件目录表的信息,也不真正存储文件内容,只反映磁盘空间当前的使用情况,是这个文件系统的核心。文件在磁盘的分布情况是以簇链的方式记录在FAT中。每个文件都有自己的存储簇,可以是连续的也可以是不连续的,通过FAT表来实现其完整性。是为在嵌入式系统中使用flash存储而专门设计的一种日志文件系统,作为一种日志结构的文件系统,它的文件由一长串节点组成,每个节点包含文件的部分信息。垃圾收集技术是JFFS2的重要部分,其原理是当需要增添新内容时,就在节点链表的末端添加新的节点、存储新的内容;若要修改文件的某部分,JFFS2将该部分标记为废弃,并在节点链表末端添加修改后的内容。如此不断地在flash上添加新的内容,当flash上的存储空间用完时,系统就回收标记为废弃的空间,该过程就称为垃圾收集。
Flash具有高密度和良好的存取速度等优点,是嵌入式领域应用为广泛的存储设备。它在读取方面与普通的存储器类似,一般可以实现完全随机的读取,大的不同在于写操作方面。Flash存储器的写操作需要经过“擦除—?写入”两个操作过程。如果希望对某一个单元进行写入时,首先必须对这个存储单元所在的扇区或块执行擦除操作,擦除操作成功完成后,整个扇区或块的数据内容都被清空。一般被设置成然后对目的单元所在的扇区或块执行写入操作,这就意味着修改数据比单独的写和读操作需要更多的时间。为了提高利用率,减少碎片,本系统定义了簇,它是写操作的小单位。当一个块或扇区提前达到擦除次数的上限时将导致整个flash无法使用。通常上限为每个块可擦除100000次。为了避免任意一个块在其它块之前达到这个限,文件系统必须保证擦除次数在各擦除块之间尽可能均匀分布,这一过程称为“均衡磨损”触摸屏工业图形显示器,简称触摸屏,它是一种连接人和设备(主要是PLC)的人机界面。它是用来替代传统的控制面板和键盘的智能化操作显示器,是工业场合常用的操作台,一般用来连接PLC等设备。如需更多工业平板电脑,触控一体机联系客服电话13776400739,QQ3157151373