第六章嵌入式操作系统概述_第1页
第六章嵌入式操作系统概述_第2页
第六章嵌入式操作系统概述_第3页
第六章嵌入式操作系统概述_第4页
第六章嵌入式操作系统概述_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第六讲:河海大学计算机与信息学院嵌入式操作系统概述,机器人项目驱动的嵌入式教学讲义,嵌入式操作系统的主要内容、基本概念,嵌入式操作系统与通用操作系统的比较,主要嵌入式操作系统简介,以应用为中心、以计算机技术为基础、软硬件切割的专用计算机系统,适应特定的应用系统以及对功能、可靠性、成本、体积和功耗的严格要求。6.1嵌入式系统的概念、嵌入式系统的特点、硬件、体积小、重量轻、成本低、可靠性高和专用嵌入式CPU。在软件中,代码体积小、效率高、响应快、能够处理异步并发事件并能够实时处理。嵌入式系统软件、现代信息社会的高效性和协同性客观上要求软件的编译方便许多人一起工作,编译后的软件具有可重用性。软件变得

2、越来越复杂。所有这些都迫切需要一个强大的操作系统来保护底层硬件。嵌入式软件的核心是嵌入式实时多任务操作系统(RTOS实时操作系统)。RTOS架构,数据采集终端:采集、处理、键盘、液晶显示、微打字,基于RTOS编程、操作系统的概念,是软硬件资源的控制中心,它组织多个用户以合理有效的方式共享各种计算机资源。目的是提供一个强大的虚拟机,给用户一个方便、有效、安全的工作环境。实时操作系统的概念,实时系统:系统的正确运行应同时满足特定的逻辑和时间关系。RTOS(实时操作系统):指能够支持实时控制系统工作的操作系统,包括硬实时和软实时。硬实时性:如果不满足系统的特定时序,将会导致灾难性的后果。软实时:如果

3、不满足系统的特定定时,系统的性能将严重下降。嵌入式操作系统:支持嵌入式系统工作的操作系统。嵌入式系统通常具有实时特性,因此嵌入式操作系统和实时操作系统在这里不会被区别对待。嵌入式操作系统的结构,嵌入式操作系统的几个主要概念,任务调度调度程序优先级代码关键部分可预测性上下文切换,任务指的是一个简单的程序与所有的CPU资源。在实时应用程序设计中,工作通常分为多个任务,每个任务处理一部分问题,并被赋予一定的优先级,即一组CPU寄存器和堆栈。实时系统中的大多数任务都是周期性的,每个任务都是典型的无限循环。任务状态:睡眠、就绪、运行、延迟、等待、任务:例如,打印CREAT任务(myprintf,优先级)

4、void my printf() for(;)正在等待接收队列信息;向打印机发送打印信息;,内核,是多任务系统的一部分,负责管理任务。抢占式和非抢占式微内核以及单片内核,如QNX微内核(12KB),只提供四种服务:进程调度、进程间通信、底层网络通信和中断。其余的操作系统服务作为协作用户流程来实现。调度调度程序是内核的主要职责之一,它决定任务运行的顺序。基本的调度算法包括先到先服务、最短周期优先SBF、优先级、循环调度、多级队列、多级反馈队列等。基本的调度方法是抢占和非抢占。大多数实时内核是基于优先级的调度方法的组合。优先级(Priority),每个任务根据其重要性被赋予一定的优先级。静态优先级

5、和动态优先级。优先级反转发生在基于优先级的系统中,一个好的实时内核应该提供一个反转的解决方案。针对实时任务的优先级分配,已经开发了许多算法,如单调执行速率调度方法RMS和最早截止时间优先级方法EDF。当高优先级任务挂起时,中优先级任务会抢占使用共享资源的低优先级任务。如果高优先级任务已准备好并等待运行,但此时中等优先级任务正在运行,则出现优先级反转问题。低优先级任务l和高优先级任务h共享资源,并且任务h在任务l占用资源后不久就准备好了;然而,此时,任务h必须等待任务l完成共享资源的操作。在任务l完成共享资源的操作之前,任务m准备好并且将运行抢先任务l。当任务m(以及可能的其他中等优先级任务)正

6、在运行时,系统中具有最高优先级的任务h保持暂停。低优先级任务首先运行、优先级反转、优先级继承和代码关键部分,代码关键部分是指一旦执行就不能中断的不可分割的代码。实现代码临界区的方法如下:第一,屏蔽中断,中断通常在代码执行前关闭,在代码执行后打开,只能在单处理器的情况下使用;第二,通过信号量机制。互斥,资源的使用必须是排他的,叫做互斥。解决方案:关闭、使用硬件指令、使用信号量和任务间通信。在多任务系统中,任务之间存在相互制约的关系,或者任务之间需要交换信息,这称为任务间通信。模式:邮箱、队列、事件标签等。时钟滴答,一种周期性发生的特殊中断,可视为系统心脏的跳动。中断周期越短,系统响应速度越快,但

7、是开销越高,程序执行速度越慢。典型的中断时间在10-200毫秒之间,20毫秒更合适。可预测性是指实时操作系统的资源分配策略能够合理地为多个实时任务分配资源,这些任务争夺资源(包括CPU、内存、网络带宽等)。)在系统运行的任何时间和任何情况下,以满足每个实时任务的实时性要求。简而言之:操作系统的行为是可知的。一个好的实时操作系统需要具备以下功能:任务管理(多任务和基于优先级的任务调度)具有消除优先级倒置的机制。任务间同步和通信。实时时钟服务中断管理服务操作系统的行为是可知和可预测的。对实时操作系统的几个重要指标进行了评估。系统响应时间是指从系统发出处理请求到系统给出响应信号的时间。上下文切换时间

8、:指任务间切换所用的时间。中断延迟:指计算机接收到中断信号,操作系统做出响应,并切换到中断服务程序的时间。6.2实时操作系统与通用操作系统的区别,设计目标:通用操作系统的目标是追求最大吞吐率,使整体性能最佳;实时操作系统设计的目标是采用各种算法和策略来确保系统行为的可预测性。调度原则:为了达到最佳的整体性能,一般操作系统的调度原则是公平的(循环调度或可变优先级调度);然而,实时系统大多采用基于固定优先级的不可分割调度策略(或不可分割调度策略,如Nucleus),优先级在运行前按一定的优先级进行分配。一,实时操作系统与通用操作系统的区别(2),内存管理:通用操作系统广泛使用虚拟内存技术为用户提供

9、强大的虚拟机,但虚拟内存机制造成的缺页和调整页面的现象会给系统带来不确定性,所以实时系统很少或有限使用虚拟内存技术,一般使用静态内存分区来为每个实时任务划分固定的内存区域。这种方法的优点是系统具有更好的可预测性,但缺点是灵活性不够好。一旦任务的内存需求发生变化,就需要再次对内存进行分区。示例:Nucleus的内存分配:分区、运行堆栈、实时操作系统和通用操作系统的区别(3)、中断处理:在通用操作系统中,大多数外部中断都是打开的,中断处理通常由设备驱动程序完成。由于通用操作系统中的用户进程通常没有实时要求,并且中断处理程序直接与硬件设备交互,因此它可能有实时要求,因此中断处理程序的优先级被设置为高

10、于任何用户进程。实时操作系统中的每个用户进程通常都有实时要求,因此将中断处理程序的优先级分配得高于所有用户进程是不合适的。一种更适合实时操作系统的中断处理方法是屏蔽除时钟中断之外的所有中断,中断处理程序变成周期性轮询操作,由核心设备驱动程序或用户设备支持库完成。这种方法的主要优点是充分保证系统的可预测性、实时操作系统与一般操作系统的区别(4)、系统调用和系统内部操作的时间成本:流程通过系统调用获得操作系统提供的服务,操作系统通过内部操作(如上下文切换等)完成一些内部管理工作。)。为了保证系统的可预测性,实时操作系统中所有系统调用和内部操作的时间成本都应该是有界限的,并且界限是一个特定的量化值。

11、然而,在一般的操作系统中,这些时间开销并不受限。一些RTOS系统服务请求是函数调用,不会导致切换。实时操作系统和通用操作系统的区别(5),系统可重入性:在通用操作系统中,核心系统调用通常是不可重入的。当低优先级任务调用核心系统调用时,在此时间段内到达的高优先级任务必须等到低优先级系统调用完成后才能获得中央处理器,这降低了系统的可预测性。因此,实时操作系统中的核心系统调用通常被设计成可重入的。6.3嵌入式操作系统的发展历史,最初阶段基本上是实时监控程序,第二阶段是专用系统(80年代初,VRTX,pSOS等)。),第三阶段通用系统,嵌入式操作系统的分类可分为面向低端设备的嵌入式操作系统和面向高端设

12、备的嵌入式操作系统。低端:各种工业控制系统、计算机外设、微波炉、洗衣机、冰箱等。民用消费品;高端ucos:信息家电、掌上电脑、机顶盒、WAP手机、路由器、VxWorks、QNX、wince、linux。嵌入式操作系统的分类(2),从嵌入式系统的商业模式来分类,可以分为商业和免费两种类型。商用型:功能稳定可靠,技术支持和售后服务完善,价格高。免费型:价格优势。linux。uCOS .嵌入式操作系统的分类(3),从实时性的角度:实时性强的嵌入式操作系统:系统响应时间在毫秒或微秒级(航空/航天控制组件),实时性弱的VxWORKS嵌入式操作系统:系统响应时间在毫秒-几秒量级,实时性要求比实时性强的系统(电子菜单查询)差。没有实时特性的嵌入式操作系统。通用嵌入式操作系统,VxWorks: WindRiver,1983,可靠、实时、可扩展,各种处理器支持视窗CE、NT和XP系列:弱实时Palm:3COM公司,主要用

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论