第四章%20%20%20%20%20嵌入式实时操作系统(1).pdf

上传人:asd****56 文档编号:70322239 上传时间:2023-01-19 格式:PDF 页数:37 大小:388.55KB
返回 下载 相关 举报
第四章%20%20%20%20%20嵌入式实时操作系统(1).pdf_第1页
第1页 / 共37页
第四章%20%20%20%20%20嵌入式实时操作系统(1).pdf_第2页
第2页 / 共37页
点击查看更多>>
资源描述

《第四章%20%20%20%20%20嵌入式实时操作系统(1).pdf》由会员分享,可在线阅读,更多相关《第四章%20%20%20%20%20嵌入式实时操作系统(1).pdf(37页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、第5章 嵌入式实时操作系统内容?嵌入式实时操作系统概述?任务和任务调度?任务同步和任务间通信?中断管理和时钟管理?存储器管理?设备管理?VxWorks操作系统和Tornado开发环境?RTEMS操作系统操作系统的概念?操作系统是一种特殊的计算机软件?操作系统负责对计算机系统软件资源和硬件资源进行管理?操作系统负责为应用程序提供运行环境?操作系统为计算机用户提供一台虚拟的计算机操作系统软件的特点?便捷性:便捷性:便捷性:便捷性:操作系统的存在使得计算机更便于使用;对用户而言,操作系统是一台经过扩充的,功能强大的虚拟计算机;操作系统为计算机用户提供了一个方便、高效、安全的工作环境?高效性:高效性:

2、高效性:高效性:通过使用操作系统,计算机系统资源可以获得高效的利用;操作系统是软硬件资源的控制中心,以尽量合理有效的方法组织多个用户共享计算机的各种资源?可扩展性:可扩展性:可扩展性:可扩展性:操作系统是特殊的计算机软件,在它的应用过程中应该允许高效地开发、测试和引进新的系统功能,同时又不会破坏系统已经提供的服务操作系统的演进过程?顺序处理:顺序处理:顺序处理:顺序处理:并不是现代意义上的操作系统,用户拥有对全部硬件进行访问的能力?简单的批任务系统:简单的批任务系统:简单的批任务系统:简单的批任务系统:使用监控程序对机器进行初始化,监控程序负责加载、运行应用程序?多道程序操作系统多道程序操作系

3、统多道程序操作系统多道程序操作系统:多个应用程序同时驻留系统内存中,处理器由多个应用程序共享,当一个应用程序无法运行时,系统将处理器分配给其他可以运行的应用程序?分时系统分时系统分时系统分时系统:系统按照公平的原则对多个同时运行的应用程序进行调度,使得每个应用程序都能获得执行的机会,实现应用程序间处理器共享?分布式操作系统:分布式操作系统:分布式操作系统:分布式操作系统:为分布式系统提供单一计算机的抽象,应用程序使用位置透明的统一机制对所有系统资源进行访问现代操作系统具有的功能?多任务管理?存储器管理?文件系统的管理?逻辑I/O设备及其他资源管理?任务间的信息传递?保护机制实时系统?实时计算机

4、系统,简称为实时系统,它的具体定义是:能够在确定的时间内执行其功能,并对外部的异步事件做出响应的计算机系统?实时系统所执行计算的正确性不仅仅依赖于计算的逻辑结果,而且依赖于计算完成的时间?限定时间(deadline)是系统无法处理一个任务的最长时间实时系统的分类?强实时系统(强实时系统(强实时系统(强实时系统(hard realhard real-time time):):):):系统的时间约束如果得不到满足,将导致灾难性的后果?弱实时系统(弱实时系统(弱实时系统(弱实时系统(soft realsoft real-time time):系统的时间约束如果得不到满足,将导致系统性能严重下降按照系

5、统响应时间进行分类,实时系统可以分为两类按照系统响应时间进行分类,实时系统可以按照系统响应时间进行分类,实时系统可以分为两类分为两类实时操作系统?实时操作系统(Real-Time Operating System,RTOS)是使得计算机系统的硬件成为可用部件,由软件或固件(firmware)所实现的程序集,是介于编程者和机器硬件之间的一个软件层?实时操作系统能够及时响应外部事件,在规定时间内对事件进行处理,并控制所有实时任务协调运行?实时操作系统首要任务是调配一切可利用的资源完成实时控制任务,其次才着眼于提高计算机系统的运行效率?实时操作系统最重要的特点是系统必须满足对时间约束条件实时/通用操

6、作系统的区别?设计目标不同?通用操作系统的设计目标是追求最大的系统吞吐率、获得最好的整体性能?实时操作系统的设计目标是采用各种算法和策略,始终保证系统行为的可预测性?调度原则不同?通用操作系统的设计目标是达到最佳整体性能,其调度原则是保证公平?实时系统多采用基于优先级的占先的调度策略,其调度原则是尽可能保证系统的设计约束条件?内存管理不同?通用操作系统广泛使用了虚拟内存技术,为用户提供功能强大的虚拟机器?虚存机制引起的缺页调页现象会造成系统的不确定性,在实时系统中使用虚拟内存技术的情况很少或者非常有限实时操作系统的特点?对实时任务调度的支持?占先式的任务调度算法?有保证的中断响应?对进程间通信

7、的支持?高速的数据获取能力?对I/O的扩展支持?用户可控制系统资源?操作系统的行为是可知的、可预测的实时操作系统的评价参数?系统响应时间(系统响应时间(系统响应时间(系统响应时间(System response timeSystem response time):):):):是指系统发出处理要求到系统给出应答信号的时间?任务切换时间(任务切换时间(任务切换时间(任务切换时间(ContextContext-switching timeswitching time):):):):是指任务之间切换使用的时间?中断延迟(中断延迟(中断延迟(中断延迟(Interrupt latencyInterrupt

8、 latency):):):):是指计算机接收到中断信号到操作系统做出响应,并完成切换转入中断服务程序所需的时间涉及实时操作系统的标准?POSIX 1003.4是POSIX为实时系统所作的扩充?Motorola公司和软件组件组织(Software Components Group)提出了实时内核接口定义(RTEID)标准?开放实时内核接口定义(ORKID)标准是在RTEID的基础上发展起来的嵌入式系统以应用为中心,计算机技术为基础,软硬件可裁剪,适应于特定应用系统,对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统嵌入式操作系统?支持嵌入式系统的工作的操作系统是嵌入式操作系统?软件代码

9、紧凑,高度自动化,响应速度快?一般情况下具有实时特性?提供多任务运行环境嵌入式操作系统的特点?适用范围广泛?逐渐采用通用操作系统的先进技术?操作系统与应用程序的关系更加紧密?可配置,易裁剪?发展趋势是为特定目标全新开发,采用软件工程的先进技术商用嵌入式操作系统?WindRiver公司开发的VxWorks?ISI公司开发的pSOS?Lynx实时系统公司开发的Lynx OS?QNX系统公司开发的QNX?Intel公司开发的iRMX?微软公司开发的Windows CE?Accelerated技术公司开发的Nucleus?Microtec研究公司开发的VRTX开放源代码的嵌入式操作系统?两种具有代表性

10、的实时Linux:新墨西哥工学院的RT-Linux以及堪萨斯大学的KURT-Linux?Redhat公司开发的ECOS?美国人Jean Labrosse个人开发的C/OS?美国OAR公司开发的RTEMS操作系统开发的软件工程问题?可移植性?高效性?可扩展性?静态可扩展性?动态可扩展性?维护性操作系统的设计技术?单一非间断监视器模型?内核模型?分层系统模型?基于消息传递的系统模型?基于对象的模型?面向对象的模型嵌入式操作系统的开发环境?交叉编译器的概念?宿主机和目标机的概念?指令仿真器?远程调试?在线仿真器(ICE)任务的定义?任务也称为线程,是一个简单的程序,在运行过程中它认为CPU一直被自己

11、独占?应用程序的设计过程也就是将问题分解为多个任务的过程?每个任务都是整个应用程序的一个组成部分,都会被赋予一定的优先级,拥有自己独立的一系列CPU寄存器和堆栈空间?在典型地情况下,每个任务都会执行一个无限循环任务状态?处于休眠态的任务驻留在内存中,不能被内核调度?处于就绪态的任务已经准备好运行,但此任务的优先级低于当前运行的任务,暂时还不能运行?处于运行态的任务持有CPU的控制权,正在运行?处于挂起状态的任务正在等待某一事件的发生?发生中断时,执行线程进入中断服务程序,原来正在运行的任务暂不能运行,处于被中断状态任务都会处于五种状态中的一种,这五种状态是休眠态,就绪态、运行态、挂起态(等待某

12、一事件的发生)以及被中断状态任务都会处于五种状态中的一种,这五种状态任务都会处于五种状态中的一种,这五种状态是休眠态,就绪态、运行态、挂起态是休眠态,就绪态、运行态、挂起态(等待某等待某一事件的发生一事件的发生)以及被中断状态以及被中断状态任务控制块?任务的当前状态?任务的优先级?要等待的事件或者资源?任务程序码的起始地址?初始堆栈指针?任务运行上下文内核使用任务控制块(TCB)管理任务调度等方面的功能,每个任务都有与之相关的任务控制块,它用于对任务进行描述,包含很多信息,其中的主要组成部分包括:内核使用任务控制块(内核使用任务控制块(TCBTCB)管理任务调度等方面管理任务调度等方面的功能,

13、每个任务都有与之相关的任务控制块,它的功能,每个任务都有与之相关的任务控制块,它用于对任务进行描述,包含很多信息,其中的主要用于对任务进行描述,包含很多信息,其中的主要组成部分包括:组成部分包括:任务上下文切换?任务上下文(context)用于保存计算机的运行状态,主要包括各个CPU寄存器的内容?上下文切换(context switch)主要是CPU的各个寄存器的内容发生切换,当多任务内核决定停止当前任务的运行,开始运行其它任务时,执行任务上下文切换?内核将当前任务的上下文保存到相应的任务控制块中的一个存储空间,即任务上下文存储区(tasks context storage area)?之后,

14、内核再将后继任务的上下文从其任务控制块中重新装载,最后开始运行后继任务任务调度器的概念?调度器(scheduler/dispatcher)是内核的主要组成部分,负责控制各个任务在不同任务状态间转换?调度器的基本功能是管理就绪、悬置和休眠任务队列,实现任务切换的功能?可以使用两种方式激活任务调度器,完成一次任务调度?调度器接收到系统硬件发出时钟中断请求?当前运行任务执行系统调用,向调度器发送消息调度策略?时间片轮转调度?基于优先级的占先调度?单调速率调度方法?最早时限优先(EDF)调度方法时间片轮转调度?所有任务优先级相同,内核为各个任务分配时间片(timeslice)也称为时间额度(quant

15、um)?就绪任务队列按照先进先出方式组织,即任务从队尾进入,从队头取出?分配给每个任务的时间片是相同的,一个任务用尽时间片后就暂停执行,调度器从就绪任务队列队头取出下一个任务开始执行,这个过程也可称为下一个任务占先执行?一个任务也可能在用完自己的时间片之前主动放弃CPU,停止执行时间片轮转调度的特点?使用这个调度方法,可以尽可能地保证调度的公平性?具有实时响应要求的任务无法占先执行使用时间片轮转调度方法的多任务操作系统通常被称为分时系统,这个调度方法不适于管理实时任务使用时间片轮转调度方法的多任务操作系统通常被称使用时间片轮转调度方法的多任务操作系统通常被称为分时系统,这个调度方法不适于管理实

16、时任务为分时系统,这个调度方法不适于管理实时任务基于优先级的占先调度?使用这种调度方法,系统根据任务的重要性为各个任务指定不同的优先级?处于就绪状态的最高优先级的任务持有CPU的控制权,可以一直运行下去?当当前运行的任务执行同步操作或者等待系统资源时才停止运行挂起?当前任务挂起的同时,调度器负责重新寻找系统中的最高优先级的任务,调度执行任务优先级?每个任务按其重要程度被赋予一定的优先级?静态优先级与动态优先级?优先级在任务初始化时固定,运行过程中操作系统不会对其进行修改?在任务运行过程中,操作系统可以改变优先级的数值?基于优先级的系统会出现优先级反转问题,好实时内核应该提供解决反转的办法?多种

17、算法适用于实时任务的优先级分配,包括单调速率调度法(RMS)和最早时限优先法(EDF)等单调速率调度方法?单调速率调度(Rate-Monotonic Scheduling,RMS)算法是一种单处理器静态优先级占先式调度方法?所有被调度任务都是周期性任务,所有任务的相对限定时间等于其执行周期?执行周期越短的任务,其优先级越高,高优先级任务可以占先低优先级任务任务的可调度性)12(/11=nninTiEi?n:被调度任务的总数?Ei:任务i的执行时间?Ti:任务i的周期EDF调度方法?EDF调度算法(Earliest Deadline First),即最早时限优先法是一种单处理器动态优先级的占先式

18、调度方法?使用这种算法的系统总是执行绝对限定时间最接近的任务?一个任务的绝对限定时间越接近,其优先级越高,高优先级任务可以占先低优先级任务内核的概念?在多任务操作系统中,内核(kernel)负责对各个任务进行管理?内核负责为各个任务分配CPU时间?负责提供任务间通信的支持服务?内核提供的基本服务是任务切换?实时内核可以简化应用系统的设计,应用程序可以被分解为若干更简单的任务协作运行,由实时内核进行管理?内核本身增加了系统的额外开销?代码空间会增加系统ROM的需求?内核自身的数据结构会增加系统RAM的需求?每个任务具有独立的堆栈空间,增加系统RAM的需求?内核自身占用的CPU时间一般占总运行时间的2%到5%之间?内核为操作系统提供系统服务支持,提高CPU的利用率占先式与非占先式内核?在执行内核服务过程中允许被占先的内核是占先式内核?非占先式内核在为一个应用程序提供内核服务的过程中,不能被打断从而为其他应用程序提供服务?实时操作系统的内核都应该是占先式的单态内核与微内核?采用单态内核的组织方法,所有的内核函数和数据结构都链接到一个大内核模块中?采用微内核方法,内核中只包含必要的系统服务支持程序,其他操作系统服务程序在用户模式进程中实现?微内核模型具有较好的维护性和移植性;单态内核模型的执行效率更高?发展趋势是微内核模型逐渐替代单态内核模型

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 技术资料 > 其他杂项

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com