欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    PCAppt课件第五章嵌入式文件系统.ppt

    • 资源ID:3909511       资源大小:449.50KB        全文页数:40页
    • 资源格式: PPT        下载积分:16金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要16金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    PCAppt课件第五章嵌入式文件系统.ppt

    1,第5章 嵌入式文件系统,5.1 嵌入式文件系统,2,5.1 文件系统简介,文件系统的定义 文件系统是操作系统中组织、存储和命名文件的结构,是操作系统中统一管理信息资源的一种方式,可以管理文件的存储、检索、更新,提供安全可靠的共享和保护手段,方便用户使用。大部分应用程序都是基于文件系统进行操作,在不同的文件系统上是不能工作的。文件系统的存储媒质:磁盘、光盘、FLASH盘等FAT(文件分配表)系统是最常用的文件系统,主要优点是可以允许多种操作系统访问。,3,5.1 文件系统简介,文件系统主要功能方便的文件访问和控制:以符号名称作为文件标识,便于用户使用;并发文件访问和控制:在多道程系统中支持对文件的并发访问和控制;统一的用户接口:在不同设备上提供同样的接口,方便用户操作和编程;多种文件访问权限:在多用户系统中的不同用户对同一文件会有不同的访问权限;优化性能:存储效率、检索性能、读写性能;差错恢复:能够验证文件的正确性,并具有一定的差错恢复能力;,4,5.1 文件系统简介,文件系统的结构,5,5.1 文件系统简介,文件系统的主要内容:文件的格式 目录的格式 磁盘的分配回收 访问方式和权限 目录也是一个特殊的文件。,6,FAT文件系统,FAT文件系统的发展,7,FAT12/FAT16/FAT32比较,8,FAT 文件系统由下面四部分组成保留区 Reserved region存放引导记录,BIOS信息等FAT 区FAT信息列表(12/16/32 bits)根目录区目录信息列表(32 bytes)文件和目录数据区存放簇信息,FAT文件系统基本结构,9,引导记录基本信息 引导代码BIOS参数块(BPB)字节/扇区(512,1024,2048,4096)扇区/簇(1,2,4,8,16,32,64,128)根目录数总扇区值介质类型(硬盘,软盘,FLASH),保留区 Reserved Region,10,通常有 FAT(P)(primary)和FAT(B)(backup)每一个簇都有一个对应的FAT表项,FAT,数据区,FAT 区,11,FAT 链表(以FAT16为例),目录树,12,5.2 嵌入式文件系统,嵌入式文件系统与桌面文件系统有较大区别:嵌入式文件系统要为嵌入式系统的设计目的而服务的,不同用途的嵌入式操作系统下的文件系统在许多方面各不相同。嵌入式Linux常用文件系统:第二版扩展文件系统(Ext2ft)、JFFS、YAFFS,13,嵌入式Linux常用文件系统,Flash Memory简介 Flash Memory上的两种技术NAND:串行;顺序读取;适合大容量;通常需MTDNOR:并行;随机读取;适合数据或程序存储;XIP;Xsbase开发平台上所使用的闪存 Intel StrataFlash Memory 28F128J3A Ext2fs、JFFS和YAFFS ext、ext2、xia、vfat、minix、msdos、umsdos、proc、smb、ncp、iso9660、sysv、hpfs、affs、ufs、vfs等,14,嵌入式Linux常用文件系统,第二版扩展文件系统(Ext2fs)的优点 Ext2fs支持达4 TB的内存(Ext是2G)。Ext2fs文件名称最长可以到1012个字符。当创建文件系统时,管理员可以选择逻辑块的大小(通常大小可选择 1024、2048和4096字节)。Ext2fs实现快速符号链接:不需要为此目的而分配数据块,并且将目标名称直接存储在索引节点表中,这使性能有所提高,特别是在速度上。,15,基于FLASH的嵌入式文件系统,嵌入式系统中常使用FLASH作为存储介质,有其特定的结构特点:基本存储单位是Page,每个Page有512+16个字节;32个Page为一个Block;所有的Block组成一个Device,代表整个存储体。主要有两种技术:NAND和NOR 三星K9F2808U0A-YCB0 FLASH(NAND技术)有16M字节的存储容量:有1024个Block,Device的总容量是:528Bytes*32Pages*1024Blocks=132Mbits Intel公司的28F128J3A Flash(NOR技术),16,NAND和NOR两种技术比较,17,FLASH的存储结构,18,FLASH的读写特点和FAT组织,读写特点:(1)必须以Page为单位进行读写;(2)写之前必须先擦除原有内容;(3)擦除操作必须对Block进行,即一次至少擦除一个Block的内容FAT组织 将Flash的一个Page定为1个扇区,2个Block-64 个扇区定为一个簇(也可以定义32个扇区为一个簇),这样,簇的容量刚好为5126432K,满足FAT16对簇大小的要求。,19,FLASH文件系统的特殊要求,(1)掉电安全:嵌入式系统的运行环境一般比较恶劣,但同时又要求有较高的可靠性。这就对FLASH文件系统进出了较高的要求,无论程序崩溃或系统掉电,都不能影响文件系统的一致性和完整性,文件系统的写入、垃圾回收等操作对系统异常中止都非常敏感,极易造成数据丢失和数据垃圾,在文件系统设计和选用时应考虑;(2)平均使用(wear-leveling):由于FLASH扇区的擦除次数有限制,要求能够均匀使用各扇区,以延长FLASH的使用寿命;,20,(3)高效垃圾回收(garbage collection):任何存储器在分配使用一段时间后,都会出现空区和碎片数据,为保证存储空间的使用率。方法是先移动扇区数据,再擦除整个扇区;(4)低空间消耗(low overhead):指文件系统管理结构在FLASH存储器上的空间消耗,该空间用于FS建立,而不能用于实际数据的存储,可以提高有用数据的存储空间。,FLASH文件系统的特殊要求,21,(1)集中管理文件系统特点:存储器空间的使用信息集中存放在存储器的某个地方,存储器的其它区域用于存放数据,数据必须依赖关键信息区才能被索引和使用缺点:需要大量缓存空间,当某扇区需要更新时,先将扇区数据备份到RAM中,再进行擦除操作,最后将修改后的备份写入FLASH,缺点是难以保证掉电安全,不能均匀使用存储器空间,特别是关键信息区,对文件系统的使用都会改写该区,导致FLASH快速损坏;,FLASH文件系统的分类,22,FLASH文件系统的分类,(2)线性文件系统概述:每个文件相关的信息都连续存放在存储器中,实现简单,读写快速,文件系统的关键信息分布存放;优点:安全性好;能保证存储器的平均使用,延长了FLASH的使用寿命;缺点:对文件操作效率低,不易实现添加、插入、剪切等操作;,23,(3)日志文件系统基本思想:跟踪文件系统的变化而不是文件系统的内容概述:日志结构的文件系统使用顺序的、只增的日志作为磁盘上唯一的组织文件系统数据的结构,文件的描述可以仍采用传统的索引组织方式。方法是在内存中将几次 FS的修改汇集成一个大的日志条目(被称为段映像),然后动态分配磁盘空间并通过一次写操作写到磁盘上的一个连续的、固定大小的日志段(Segment)中。并定时或当系统发出同步写请求时保证日志同步写到磁盘上,FLASH文件系统的分类,24,典型FLASH文件系统的结构,(1)系统记录(SR,System Record)存放媒质信息和最重要的文件系统信息。媒质信息诸如Flash存储器的类型、容量,划分成多少个区块,每区块包含多少个页面等。文件系统信息包括版本信息、保留区块的数目和位置、文件分配表和文件登记表所在的位置和大小、数据区域的位置和大小等。(2)文件分配表(FAT,File Allocation Table)存放着Flash存储器上所有区块的占用与空闲情况以及每个文件的存储连接结构,采用FAT16文件格式。,25,(3)文件登记表(FRT,File Register Table)存放着Flash文件系统中每一个文件的文件代号、文件长度、文件属性以及该文件的存储链在文件分配表中的入口。(4)数据区域(Data Area)用于存放文件的数据内容。本Flash文件系统中,数据分配的最小单位是Flash存储器的一个基本擦除单元,即一个物理区块(Block)。,26,FLASH的前两个BLOCK,27,FILE结构体,typedef structU8 BufferBLOCK_SIZE;/文件缓冲区U32 fileblock;/文件当前的簇的位置U32 filemode;/打开文件的模式U32 filebufnum;/文件缓冲区中已经读取/写入的字节数U32 fileCurpos;/读写的当前位置U32 filesize;/文件的大小FILE;,28,与FLASH存储器的接口函数,块擦除:unsigned char Erase_Cluster(unsigned int cluster)页写入:int WritePage(unsigned int block,unsigned int page,unsigned char*pPage)页读出:void ReadPage(unsigned int block,unsigned int page,unsigned char*pPage),29,文件系统的相关API函数,始始化文件系统:void initOSFile()以读取或者写入模式打开文件:File*OpenOSFile(Char filename,U32 OpenMode)读文件到缓冲区:U32 ReadOSFile(FILE*pfile,U8*ReadBuffer,U32 nReadbyte)把缓冲区内容写入文件:U32 WriteOSFile(FILE*pfile,U8*WriteBuffer,U32 nWritebyte)关闭文件,释放缓冲区:void CloseOSFile(FILE*Pfile),30,OpenOSFile的工作的流程图,31,ReadOSFile函数的程序流程图,32,WriteOSFile函数的程序流程图,33,否,CloseOSFile函数的程序流程图,34,5.3 常用的基于Flash文件系统,1、JFFS文件系统 2000年Axis公司发布了他们开发的日志式Flash文件系统 JFFS文件系统是开放源代码的文件系统,可以说是专门用于嵌入式Linux等系统的 www.infradead.org JFFS是直接在Flash设备上实现的文件系统 JFFS2没有为Flash设备专门设计一个转换层来模拟普通的文件系统,而是直接对Flash进行操作,35,主要针对NOR Flash设计,是一种基于Flash 的JFFS文件系统日志文件系统 JFFS的底层驱动(MTD)主要完成文件系统对Flash芯片的访问控制,如读、写、擦除操作 JFFS2是JFFS的改进版,,36,MTD驱动:为JFFS或JFFS2 提供对NAND闪存或NOR闪存芯片进行各种操作的驱动程序,基于NOR闪存的Flash 的JFFS2文件系统已很成熟,JFFS文件系统层次图,37,YAFFS主要针对NAND Flash设计,和JFFS相比它将少了一些功能。自带NAND 芯片驱动,且为嵌入式系统提供了直接访问文件系统的APIYAFFS2时YAFFS的改进版本,2、YAFFS文件系统,38,(1)JFFS是一种日志文件系统,通过日志机制保证文件系统的稳定性。YAFFS仅仅借鉴了日志系统的思想,不提供日志机能,所以稳定性不如JAFFS,但是资源占用少。(2)JFFS中使用多级链表管理需要回收的脏块,并且使用系统生成伪随机变量决定要回收的块,通过这种方法能提供较好的写均衡,在YAFFS中是从头到尾对块搜索,所以在垃圾收集上JFFS的速度慢,但是能延长NAND的寿命。,两种文件系统的比较,39,两种文件系统的比较,(3)JFFS支持文件压缩,适合存储容量较小的系统;YAFFS不支持压缩,更适合存储容量大的系统。(4)YAFFS 还带有NAND芯片驱动,并为嵌入式系统提供了直接访问文件系统的API,用户可以不使用Linux中的MTD和VFS,直接对文件进行操作。,40,习题,1、教材第六章 习题1,习题2,习题3,

    注意事项

    本文(PCAppt课件第五章嵌入式文件系统.ppt)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开