嵌入式系统设计与实例开发优秀PPT.ppt
《嵌入式系统设计与实例开发优秀PPT.ppt》由会员分享,可在线阅读,更多相关《嵌入式系统设计与实例开发优秀PPT.ppt(112页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、嵌入式系统设计与实例开发嵌入式系统设计与实例开发你现在浏览的是第一页,共112页uCOS-IIuCOS-II的不足之处的不足之处l只有多任务调度的简单内核只有多任务调度的简单内核l内存管理过于简单,几乎没有动态内存管理功能内存管理过于简单,几乎没有动态内存管理功能l文件系统和图形界面需要外挂文件系统和图形界面需要外挂l对于设备驱动程序没有专门统一的接口对于设备驱动程序没有专门统一的接口你现在浏览的是第二页,共112页对COS-II进行必要的扩展要想实现一个相对完整、实用的嵌入式操作系统,还需要相当多要想实现一个相对完整、实用的嵌入式操作系统,还需要相当多的扩展性的工作。如:的扩展性的工作。如:
2、l建立了建立了FATFAT兼容的文件系统兼容的文件系统l外设及驱动程序的实现外设及驱动程序的实现l基于基于UnicodeUnicode的汉字库的汉字库l基本绘图函数的实现基本绘图函数的实现l其它实用其它实用APIAPI函数函数你现在浏览的是第三页,共112页基于COS-II扩展RTOS的体系结构你现在浏览的是第四页,共112页1系统外围设备的硬件部分l系统外围设备的硬件部分包括:液晶显示屏(系统外围设备的硬件部分包括:液晶显示屏(LCDLCD)、)、USBUSB通信模通信模块、键盘、海量块、键盘、海量FlashFlash存储器、系统的时钟和日历。外围设备的硬存储器、系统的时钟和日历。外围设备的
3、硬件部分是保证系统实现指定任务的最底层的部件。件部分是保证系统实现指定任务的最底层的部件。2 2、驱动程序模块l驱动程序是连接底层的硬件和上层的驱动程序是连接底层的硬件和上层的APIAPI函数的纽带,有了驱动程函数的纽带,有了驱动程序模块,就可以把操作系统的序模块,就可以把操作系统的APIAPI函数和底层的硬件分离开来。硬函数和底层的硬件分离开来。硬件的改变、删除或者添加,只需要随之改变、删除或者添加提供件的改变、删除或者添加,只需要随之改变、删除或者添加提供给操作系统的相应的驱动程序就可以了。而不会影响到给操作系统的相应的驱动程序就可以了。而不会影响到APIAPI函数的函数的功能,更不会影响
4、到用户的应用程序。功能,更不会影响到用户的应用程序。你现在浏览的是第五页,共112页3操作系统的API函数l在操作系统中提供标准的应用程序接口(在操作系统中提供标准的应用程序接口(APIAPI)函数,可以加速用)函数,可以加速用户应用程序的开发,统一应用程序的标准,同时也给操作系统版户应用程序的开发,统一应用程序的标准,同时也给操作系统版本的升级带来了方便。在本的升级带来了方便。在APIAPI函数中,提供了大量的常用模块,可函数中,提供了大量的常用模块,可以大大简化用户应用程序的编写。以大大简化用户应用程序的编写。4实时操作系统的多任务管理l C/OS-C/OS-作为操作系统的内核,主要的任务
5、就是完成多任务之间作为操作系统的内核,主要的任务就是完成多任务之间的调度和同步。的调度和同步。5系统的消息队列l这里所说的系统的消息队列是以这里所说的系统的消息队列是以 C/OS-C/OS-的消息队列派生出来的的消息队列派生出来的系统消息传递机制,用来实现系统的各个任务之间、用户应用程系统消息传递机制,用来实现系统的各个任务之间、用户应用程序的各个任务之间以及用户应用程序和系统的各个任务之间的通序的各个任务之间以及用户应用程序和系统的各个任务之间的通信。信。你现在浏览的是第六页,共112页6系统任务l系统任务主要包括液晶显示屏(系统任务主要包括液晶显示屏(LCDLCD)的刷新任务、系统键盘扫描
6、)的刷新任务、系统键盘扫描任务。这两个任务是操作系统的基本任务,随着操作系统的启动任务。这两个任务是操作系统的基本任务,随着操作系统的启动而运行。而运行。7用户应用程序l用户的应用程序建立在系统的主任务(用户的应用程序建立在系统的主任务(Main_TaskMain_Task)基础之上。用)基础之上。用户应用程序主要通过调用系统的户应用程序主要通过调用系统的APIAPI函数对系统进行操作,完成用函数对系统进行操作,完成用户的要求。在用户的应用程序中也可以创建用户自己的任务。任户的要求。在用户的应用程序中也可以创建用户自己的任务。任务之间的协调主要依赖于系统的消息队列。务之间的协调主要依赖于系统的
7、消息队列。你现在浏览的是第七页,共112页嵌入式文件系统嵌入式文件系统你现在浏览的是第八页,共112页什么是文件系统(File System)文件系统的定义 处理文件的操作系统的部分称为文件系统处理文件的操作系统的部分称为文件系统.是操作系统中统一管理是操作系统中统一管理信息资源的一种软件,管理文件的存储、检索、更新,提供安全可靠信息资源的一种软件,管理文件的存储、检索、更新,提供安全可靠的共享和保护手段,并且方便用户使用的共享和保护手段,并且方便用户使用文件系统的功能 文件的构造、命名、存取、保护等。文件的构造、命名、存取、保护等。文件系统的存储媒质 磁盘(软盘、硬盘)、光盘、磁盘(软盘、硬
8、盘)、光盘、FLASHFLASH(盘)、(盘)、RAMRAM、ROMROM、网络、网络甚至设备等甚至设备等你现在浏览的是第九页,共112页基于NAND FLASH的嵌入式文件系统你现在浏览的是第十页,共112页FLASH读写的特点(1 1)必须以)必须以PagePage为单位进行读写;为单位进行读写;(2 2)写之前必须先擦除原有内容;)写之前必须先擦除原有内容;(3 3)擦除操作必须对)擦除操作必须对BlockBlock进行,即一次至少擦除一个进行,即一次至少擦除一个BlockBlock的内容的内容 针对这种情况,将针对这种情况,将FlashFlash的一个的一个PagePage定为定为1
9、1个扇区,将其个扇区,将其1 1个个BlockBlock,3232个扇区定为一个簇,这样,簇的容量刚好为个扇区定为一个簇,这样,簇的容量刚好为512512323216K16K,满,满足足FAT16FAT16对簇大小的要求对簇大小的要求 你现在浏览的是第十一页,共112页FLASH文件系统的要求(1 1)掉电安全:掉电安全:嵌入式系统的运行环境一般比较恶劣,但同时又要求有较高的可嵌入式系统的运行环境一般比较恶劣,但同时又要求有较高的可靠性。这就对靠性。这就对FLASHFLASH文件系统进出了较高的要求,无论程序崩溃或系统掉电,都文件系统进出了较高的要求,无论程序崩溃或系统掉电,都不能影响文件系统
10、的一致性和完整性,文件系统的写入、垃圾回收等操作对系统不能影响文件系统的一致性和完整性,文件系统的写入、垃圾回收等操作对系统异常中止都非常敏感,极易造成数据丢失和数据垃圾,在文件系统设计和选用时异常中止都非常敏感,极易造成数据丢失和数据垃圾,在文件系统设计和选用时应考虑;应考虑;(2 2)平均使用(平均使用(wear-leveling)wear-leveling):由于由于FLASHFLASH扇区的擦除次数有限制,要求能够均扇区的擦除次数有限制,要求能够均匀使用各扇区,以延长匀使用各扇区,以延长FLASHFLASH的使用寿命;的使用寿命;(3 3)高效垃圾回收(高效垃圾回收(garbage c
11、ollection)garbage collection):任何存储器在分配使用一段时间后,任何存储器在分配使用一段时间后,都会出现空区和碎片数据,为保证存储空间的使用率。方法是先移动扇区数据,都会出现空区和碎片数据,为保证存储空间的使用率。方法是先移动扇区数据,再擦除整个扇区;再擦除整个扇区;(4 4)低空间消耗(低空间消耗(lov overhead)lov overhead):指文件系统管理结构在指文件系统管理结构在FLASHFLASH存储器上的空间存储器上的空间消耗,该空间用于消耗,该空间用于FSFS建立,而不能用于实际数据的存储,可以提高有用数据的存建立,而不能用于实际数据的存储,可以
12、提高有用数据的存储空间储空间你现在浏览的是第十二页,共112页FLASH文件系统的分类(1 1)集中管理文件系统)集中管理文件系统特点:存储器空间的使用信息集中存放在存储器的某个地方,存储器的其它区特点:存储器空间的使用信息集中存放在存储器的某个地方,存储器的其它区域用于存放数据,数据必须依赖关键信息区才能被索引和使用域用于存放数据,数据必须依赖关键信息区才能被索引和使用缺点:需要大量缓存空间,当某扇区需要更新时,先将扇区数据备份到缺点:需要大量缓存空间,当某扇区需要更新时,先将扇区数据备份到RAMRAM中,再进行擦除操作,最后将修改后的备份写入中,再进行擦除操作,最后将修改后的备份写入FLA
13、SHFLASH,难以保证掉,难以保证掉电安全,不能均匀使用存储器空间,特别是关键信息区,对文件系统的电安全,不能均匀使用存储器空间,特别是关键信息区,对文件系统的使用都会改写该区,导致使用都会改写该区,导致FLASHFLASH快速损坏;快速损坏;你现在浏览的是第十三页,共112页FLASH文件系统的分类(2 2)线性文件系统)线性文件系统概述:每个文件相关的信息都连续存放在存储器中,实现简单,读写快速,概述:每个文件相关的信息都连续存放在存储器中,实现简单,读写快速,文件系统的关键信息分布存放;文件系统的关键信息分布存放;优点:安全性好;能保证存储器的平均使用,延长了优点:安全性好;能保证存储
14、器的平均使用,延长了FLASHFLASH的使用寿命;的使用寿命;缺点:对文件操作效率低,不易实现添加、插入、剪切等操作;缺点:对文件操作效率低,不易实现添加、插入、剪切等操作;你现在浏览的是第十四页,共112页FLASH文件系统的分类(3 3)日志文件系统)日志文件系统概述:日志结构的文件系统使用顺序的、只增的日志作为磁盘上唯一的组织概述:日志结构的文件系统使用顺序的、只增的日志作为磁盘上唯一的组织文件系统数据的结构文件系统数据的结构 ,文件的描述可以仍采用传统的索引组织方式。方文件的描述可以仍采用传统的索引组织方式。方法是在内存中将几次法是在内存中将几次 FSFS的修改汇集成一个大的日志条目
15、的修改汇集成一个大的日志条目(被称为段映被称为段映像像 ),),然后动态分配磁盘空间并通过一次写操作写到磁盘上的一然后动态分配磁盘空间并通过一次写操作写到磁盘上的一个连续的、固定大小的日志段个连续的、固定大小的日志段 (Segment)(Segment)中。并定时或当系统发出同中。并定时或当系统发出同步写请求时保证日志同步写到磁盘上;步写请求时保证日志同步写到磁盘上;优点:恢复快速优点:恢复快速不会产生丢失的簇、也不会因为掉电而破坏文件系统。不会产生丢失的簇、也不会因为掉电而破坏文件系统。你现在浏览的是第十五页,共112页几种开源的文件系统你现在浏览的是第十六页,共112页jffs/jffs2
16、jffs/jffs2文件系统的优缺点文件系统的优缺点lJFFS(Journaling Flash File SystemJFFS(Journaling Flash File System)概述:由瑞典概述:由瑞典AxisAxis通信公司开发的文件系统,主要针对通信公司开发的文件系统,主要针对NORNOR型型FlashFlash存储器设计,提供了掉电安全,平均使用等特性,是基于存储器设计,提供了掉电安全,平均使用等特性,是基于LinuxLinux,由于遵循由于遵循GPLGPL开放源代码,易实现移植;开放源代码,易实现移植;l日志文件系统日志文件系统l提供了更好的崩溃、掉电安全保护提供了更好的崩溃
17、、掉电安全保护ljffs2jffs2支持对支持对flashflash的均匀磨损的均匀磨损l在扇区级别上执行闪存擦除写读操作功能较好在扇区级别上执行闪存擦除写读操作功能较好l文件系统接近满时,文件系统接近满时,JFFS2 JFFS2 会大大放慢运行速度会大大放慢运行速度垃圾收集垃圾收集你现在浏览的是第十七页,共112页NandNand上上yaffsyaffs文件系统的优势文件系统的优势l专门为专门为Nand flashNand flash设计的日志文件系统设计的日志文件系统ljffsjffsjffs2jffs2不适合大容量的不适合大容量的Nand flashNand flashljffsjffs
18、的日志通过的日志通过jffs_nodejffs_node建立在建立在RAMRAM中,占用中,占用RAMRAM空间:对于空间:对于128MB128MB的的NandNand大概需要大概需要4MB4MB的空间来维护的空间来维护节点节点l启动的时候需要扫描日志节点,不适合大容量的启动的时候需要扫描日志节点,不适合大容量的Nand flashNand flashlFATFAT系统没有日志系统没有日志你现在浏览的是第十八页,共112页FAT文件系统的发展DOS 1.0(1981)DOS 3.0(1984)Win 95(1995)Win 95 Osr2(1996)Win 98(1998)Win 3.1(19
19、92)FAT12FAT16VFATFAT32你现在浏览的是第十九页,共112页FAT12/FAT16/FAT32的比较FAT12FAT16FAT32Size of FAT entry12 bits16 bits32 bitsMax num of clusters4,08665,526268,435,456Cluster size used0.5 KB-4 KB2 KB-32 KB4 KB-32 KB最大磁盘容量16,736,256(16M)2,147,123,200(2G)about 241(2T)你现在浏览的是第二十页,共112页FAT16文件系统基本结构lFAT 文件系统由下面四部分组成文
20、件系统由下面四部分组成l保留区保留区 Reserved regionl存放引导记录,存放引导记录,BIOS信息等信息等lFAT 区区lFAT信息列表信息列表(12/16/32 bits)l根目录区根目录区l目录信息列表目录信息列表(32 bytes)l文件和目录区文件和目录区l存放簇信息存放簇信息reservedFAT(p)FAT(b)Root dirFile and directory 你现在浏览的是第二十一页,共112页保留区 Reserved Regionl引引导记录导记录l基本信息基本信息 l引导代码引导代码lBIOS参数块参数块(BPB)l字节字节/扇区扇区(512,1024,204
21、8,4096)l扇区扇区/簇簇(1,2,4,8,16,32,64,128)l根目录数根目录数l总扇区值总扇区值l介质类型介质类型(硬盘硬盘,软盘,软盘,FLASH)reservedFAT(p)FAT(b)Root dirFile and directory 你现在浏览的是第二十二页,共112页FAT 区l通常有通常有 FAT(P)(primary)和和FAT(B)(backup)l每一每一个个簇都有一簇都有一个个对应对应的的FAT目目录录Cluster 2Cluster 3Cluster n-1Cluster nFAT数数据据区区reservedFAT(p)FAT(b)Root dirFile
22、 and directory 你现在浏览的是第二十三页,共112页lFAT 链表链表(FAT16)目目录树你现在浏览的是第二十四页,共112页典型FLASH文件系统的结构系统纪录系统纪录(SR,System Record)文件分配表文件分配表(FAT,File Allocation Table)文件登记表文件登记表(FRT,File Register Table)数据区域数据区域(Data Area)(1)系统记录(SR,System Record)存放媒质信息和最重要的文件系统信息。媒质信息诸如存放媒质信息和最重要的文件系统信息。媒质信息诸如FlashFlash存储器的存储器的类型、容量,划
23、分成多少个区块,每区块包含多少个页面等。文件系统信息类型、容量,划分成多少个区块,每区块包含多少个页面等。文件系统信息包括版本信息、保留区块的数目和位置、文件分配表和文件登记表所在的位包括版本信息、保留区块的数目和位置、文件分配表和文件登记表所在的位置和大小、数据区域的位置和大小等。置和大小、数据区域的位置和大小等。(2)文件分配表(FAT,File Allocation Table)存放着存放着FlashFlash存储器上所有区块的占用与空闲情况以及每个文件存储器上所有区块的占用与空闲情况以及每个文件的存储连接结构。采用的存储连接结构。采用FAT16FAT16文件格式文件格式你现在浏览的是第
24、二十五页,共112页(3)文件登记表(FRT,File Register Table)存放着存放着FlashFlash文件系统中每一个文件的文件代号、文件长度、文件文件系统中每一个文件的文件代号、文件长度、文件属性以及该文件的存储链在文件分配表中的入口。属性以及该文件的存储链在文件分配表中的入口。(4)数据区域(Data Area)用于存放文件的数据内容。本用于存放文件的数据内容。本FlashFlash文件系统中,数据分配的最小文件系统中,数据分配的最小单位是单位是FlashFlash存储器的一个基本擦除单元,即一个物理区块存储器的一个基本擦除单元,即一个物理区块(BlockBlock)。)。
25、FLASH文件系统的结构你现在浏览的是第二十六页,共112页文件系统的实现FILE结构体typedef structU8 BufferBLOCK_SIZE;/文件缓冲区文件缓冲区U32 fileblock;/文件当前的簇的位置文件当前的簇的位置U32 filemode;/打开文件的模式打开文件的模式U32 filebufnum;/文件缓冲区中已经读取文件缓冲区中已经读取/写入的写入的字节数字节数U32 fileCurpos;/读写的当前位置读写的当前位置U32 filesize;/文件的大小文件的大小FILE;你现在浏览的是第二十七页,共112页与FLASH存储器的接口函数块擦除块擦除unsi
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 嵌入式 系统 设计 实例 开发 优秀 PPT
限制150内