您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 信息化管理 > 第四章嵌入式操作系统
电子科技大学电子科技大学第四章嵌入式操作系统实时性简介嵌入式操作系统几个关键技术输入输出与设备管理概述WindowsCE介绍嵌入式Linux介绍电子科技大学电子科技大学4.1实时性简介对于什么是实时系统,POSIX1003.b作了这样的定义:指系统能够在限定的响应时间内提供所需水平的服务POSIX:可移植操作系统接口标准实时系统根据其对于实时性要求的不同,可以分为软实时和硬实时两种类型一个计算机系统为了提供对于实时性的支持,它的操作系统必须对于CPU和其他资源进行有效的调度和管理,即实时调度电子科技大学电子科技大学软实时和硬实时:主要根据实时性要求而分硬实时系统:指系统要有确保最坏情况下的服务时间,即对于事件的响应时间的截止期限是无论如何都必须得到满足。如宇宙飞船的控制系统。软实时系统:其他所有有实时特性的系统。从统计角度看,一个任务能够得到有确保的处理时间,到达系统的事件也能够在截止期限到来之前得到处理,但违反截止期限并不会带来致命的错误。如实时多媒体系统电子科技大学电子科技大学实时调度分类各种实时操作系统的实时调度算法从调度策略上可以分为如下三种类别:基于优先级的调度算法(Priority-drivenscheduling-PD)、基于CPU使用比例的共享式的调度算法(Share-drivenscheduling-SD)、以及基于时间的进程调度算法(Time-drivenscheduling-TD)从调度方式上来讲可以分为:可抢占、不可抢占;从时间片来分:固定时间片、可变时间片电子科技大学电子科技大学基于优先级的调度算法:是一种硬实时调度给每个进程分配一个优先级,每次进程调度时,总是执行优先级最高的那个进程。基于CPU使用比例的共享式的调度算法:一般用于软实时的应用场合按照一定的权重对一组需要调度的任务进行调度,让它们执行时间与它们的权重成正比。基于时间的进程调度算法:一般用于很小的嵌入式系统在系统设计阶段就需要明确系统所有处理情况,对各个任务的开始、切换、结束时间等都事先做出明确安排和设计。电子科技大学电子科技大学实时性改造对操作系统实时性的扩展可以从两方面进行:向外扩展和向上扩展向外扩展是从范围上扩展,让实时系统支持的范围更广,支持的设备更多向上扩展是扩充操作系统内核,从功能上扩充系统的实时处理电子科技大学电子科技大学第四章嵌入式操作系统实时性简介嵌入式操作系统几个关键技术输入输出与设备管理概述WindowsCE介绍嵌入式Linux介绍电子科技大学电子科技大学4.2嵌入式操作系统几个关键技术启动电源管理存储管理电子科技大学电子科技大学启动优化基本技术一、固化各种不可扩展硬件的设置,尽量标准化可扩展设备的接口,节约设备检测时间。二、LazyLoading,也即不加载当前非必需的模块,这些模块可以在启动后待机时间内加载,或者在具体用到之后再加载,把启动时间打散,从而缩短对用户来说至关重要的反应时间(RespondingTime)。三、任务并行化,很多系统在启动任务时,是顺序执行,按部就班。为了减少启动时间,我们可以考虑任务的并行化,以减少启动时间的消耗。电子科技大学电子科技大学电源管理综述最主要的电源管理方案主要有三种:APM、ACPI、DPM传统的APM(AdvancedPowerManagement)是一种基于bios的电源管理标准ACPI(AdvancedConfigurationandPowerInterface),它主要是将电源管理的主要执行者由bios转换成为操作系统,这样可以提供更大的灵活性以及可扩展性电子科技大学电子科技大学DPM简介DPM-DynamicPowerManagement在面向Linux的DPM架构中,内核中的DPM子系统负责维持整个系统的电源状态并把DPM系统的不同电源管理模块联系在一起。可以把DPM看成是为驱动程序、中间件和应用程序提供服务的元素电子科技大学电子科技大学DPM框架中间件应用软件系统软件手机操作系统内核DPM子系统驱动程序驱动程序驱动程序策略管理层可感知DPM的应用软件普通应用软件DPM包装器中应用软件电子科技大学电子科技大学存储管理多程序模型–这是没有硬件地址转换的内存管理模型。即使没有硬件地址转换功能支持,多个程序也可以共享相同的物理地址具有地址转换硬件的内存管理模型–应用程序使用的是虚拟地址,CPU实际执行程序所示用的是物理地址,从虚拟地址到物理地址的转换需要操作系统和MMU硬件的参与电子科技大学电子科技大学虚拟存储功能巨大的寻址空间内存映射公平的物理内存分配共享虚拟内存电子科技大学电子科技大学分段和分页机制分段机制:从逻辑地址到线性地址的转换分页机制:是在段机制之后进行的,它进一步将线性地址转换为物理地址电子科技大学电子科技大学地址映射机制地址映射机制,主要完成主存、辅存和虚存之间的关联Linux采用一系列的数据结构和一个硬件缓存(TLB)来实现地址映射机制Linux内核的映射机制被设计成三层,在页面目录和页表之间增设了一层“中间目录”电子科技大学电子科技大学利用两级页表转换地址图电子科技大学电子科技大学内存的分配与回收最近被执行过的地址转换结果会被保留在MMU的转换后备缓存(TLB)中页分配使用2的幂数大小的块Linux使用Buddy算法有效地分配和回收页块电子科技大学电子科技大学Buddy算法这个算法首先找它请求大小的内存页块,它跟踪free_area数据结构中的list单元队列中的空闲页的链表如果找到的页块大于请求的页块,则该块将被分开成为合适大小的块因为所有的块都是2的幂次的页数组成,所以这个分割的过程比较简单,你只需要将它平分就可以了。空闲的块则放到适当的队列,而分配的页块则返回给调用者。电子科技大学电子科技大学存储设备的管理方式直接访问Flash–自己编写Flash的驱动程序(即基本操作函数)FlashDisk–有些Flash存储设备上附带了控制电路,并且提供了IDE的接口。这些设备通常都是模拟了PC中的IDE之类设备的接口专用于Flash的文件系统–JFFS等文件系统,目前已经非常成熟,并有了成功的应用电子科技大学电子科技大学第四章嵌入式操作系统实时性简介嵌入式操作系统几个关键技术输入输出与设备管理概述WindowsCE介绍嵌入式Linux介绍电子科技大学电子科技大学输入输出与设备管理概述I/O设备抽象I/O调度缓冲技术高速缓存错误处理性能与优化电子科技大学电子科技大学I/O设备抽象不同的I/O设备,它们的读写方式不尽相同对于应用程序来说最好是所有的设备都可以通过一个相同的界面来进行读写操作需要通过一套机制对某一类相似的I/O设备的具体操作细节进行封装在操作系统中是通过设备驱动来实现的电子科技大学电子科技大学I/O设备抽象层次结构操作系统内核操作系统内核I/O子系统LCD驱动触摸屏驱动PCIbus驱动……LCD控制器触摸屏控制器……PCIbus控制器LCD触摸屏PCIbus……硬件软件电子科技大学电子科技大学I/O调度I/O调度指的是对一组I/O请求进行安排,决定它们的执行顺序操作系统一般会把对某个设备的I/O请求放入那个设备的请求队列中去然后由I/O调度器对这些请求进行重新安排以改进系统的整体性能电子科技大学电子科技大学缓冲技术引入缓冲技术,主要有以下三个原因:–一、是协调数据产生设备(producer)和数据接收设备(consumer)的速度–二、是协调数据产生设备和数据接收设备的数据大小–三、是因为为了保证写入外设的数据的一致性,要先把数据转移到内核空间在缓冲技术(Buffering)中,两个设备之间或者一个设备与一个应用程序之间需要传输数据时,这些数据会先保存在内存中,这个内存区域称为缓冲区电子科技大学电子科技大学高速缓存高速缓存(Caching)是指把低速存储器的部分数据保存在高速存储器中以提高系统性能的技术缓冲技术跟缓存技术的区别:缓冲块中的数据是独一无二仅此一份的,而缓存中的数据是低速存储器中的数据的拷贝。电子科技大学电子科技大学错误处理使用保护内存I/O设备和传输操作在很多情况下都会发生错误,有的是暂时性的,有的是永久性的操作系统的错误提示能力相对硬件设备来说一般都比较低一个硬件设备可以提供非常丰富和详细的出错信息,但是操作系统往往会忽略其中的很多信息电子科技大学电子科技大学I/O性能对系统性能的影响首先它需要CPU执行设备驱动程序,并对I/O请求进行调度其次,I/O操作造成的程序执行上下文切换(contextswitch)也加重了CPU和缓存的负担并且I/O是中断操作的主要组成部分,内核的中断处理性能稍有不足就会在I/O操作中暴露无遗最后,I/O操作需要频繁的在设备控制器与内存、内存中用户空间与内核空间缓冲区之间拷贝数据电子科技大学电子科技大学性能与优化减少上下文切换次数。减少数据在内存与设备之间复制的次数。通过使用更大的数据传输单元、智能化的设备控制器和轮循(如果空等可以有效减少)等手段来减少中断次数。把一部分I/O处理工作转移到硬件设备中去,使得外设能够跟CPU形成一定的并行处理,分担CPU的任务。在CPU、存储器、总线和I/O之间平衡工作量。因为任何一部分的过载都会导致其余部分的等待,从而造成整体性能下降。电子科技大学电子科技大学第四章嵌入式操作系统实时性简介嵌入式操作系统几个关键技术输入输出与设备管理概述WindowsCE介绍嵌入式Linux介绍电子科技大学电子科技大学4.4.1WindwosEmbeddedWindowsEmbedded是微软嵌入式技术和产品的总称。WindowsEmbedded是微软开发的操作系统软件和工具集系列,用于各种计算机设备,如收款机、自动柜员机(ATM)、工业控制器、网关、Internet协议(IP)电话、服务器设备、基于Windows的瘦客户机、高级消费类电子产品以及各种专门的手持设备。WindowsEmbedded产品系列包括领先的操作系统WindowsEmbeddedCE和WindowsXPEmbedded,这些操作系统中包含的技术和工具使开发商可以开发适用于各种要求严格的环境的嵌入式设备。电子科技大学电子科技大学WindwosCE将先进的操作系统和功能最强大的开发工具有机地融为一体,帮助开发人员快速创建下一代智能,互连,低资源占用地设备。WindowsCE为构建,调试和部署基于WindowsCE的设备提供了完整的操作系统功能集和丰富的开发工具。WindowsXPEmbedded是主导业界的桌面操作系统WindowsXPProfessional的组件化版本,能够快速开发出最可靠,功能最完备的互连设备。基于与WindowsXPProfessional完全相同的二进制代码,WindowsXPEmbedded使开发人员能够为定制的,缩减型的嵌入式设备独立地选择所需要的丰富功能。电子科技大学电子科技大学微软的移动平台WindowsCE小型个人产品•单向网络•信息消费WindowsMobileSmartphone•信息消费•基本数据浏览•把PDA融入电话•可以与Exchange交互•.NETCompactFramework•ASP.NET移动控件PocketPC•信息消费•浏览和输入数据•把电话融入PDA•可以与Office,Exchange和SQLServer交互•.NETCompactFramework•ASP.NET移动控件笔记本PC•复杂的文档编辑和读写•桌面键盘输入•键盘和鼠标输入法•完整的.NETframework支持WindowsXP/XPE平板电脑•复杂的文档编辑和读写•桌面键盘输入•支持数字墨水•可以支持键盘,也可以把键盘拿走•键盘、鼠标、数字墨水和语音输入•完整的.NETframework支持•提供笔,数字墨水,手写和语音识别API电子科技大学电子科技大学WindowsEmbed
本文标题:第四章嵌入式操作系统
链接地址:https://www.777doc.com/doc-3376877 .html