第九章 嵌入式实时操作系统

来源:互联网 发布:CR1000程序编程 编辑:程序博客网 时间:2024/05/16 04:48
 

1 实时系统的概念
  实时系统是能够在指定或者确定的时间内完成系统功能和外部或内部,同步或异步时间做出响应的系统。
  POSIX 1003.b定义:指系统能够在限定的响应时间内提供所需水平的服务。
  实时系统的正确性不仅仅依赖于计算的逻辑结果,而且依赖于结果产生的时间。
  两个特点:响应时间限定,可预知。
  两个能力:在事先定义的事件范围内识别和处理离散事件的能力。系统能够处理和储存控制系统所需要的大量数据。

2 实时系统的分类
  按任务到达分:有周期性的系统和非周期性系统。
  周期性的系统:任务必须在每个周期内完成一次。可以在周期开始时启动,也可以在周期开始以后启动,但必须在周期完成前完成。
  非周期性系统:任务到达没有规则的时间要求,必须有一个启动时间或完成时间。
  按实时性能分:硬实时系统和软实时系统。
   硬实时系统:指应用的时间需求能够得到完全满足,否则就造成重大安全事故,甚至造成重大的生命财产损失和生态破坏。如航空航天,军事,核工业等领域。
   软实时系统:应用虽提出时间需求,但实时任务偶尔违反这种需求对系统运行及环境不会造成严重影响。如视频点播,监控系统,信息采集系统。
   按照调度算法分,通用系统中以大吞吐量为目标。实时系统满足时间的正确性。提供高度动态的,满足在线需求的,适应性的实时调度。
  第三类分:实时过程控制系统和实时信息处理系统。
  实时过程控制系统:系统实时地从外界获得被控系统的当前状态,进行预定的处理,根据处理结果对外界被控系统进行及时控制,使其处于要求的状态下。实时过程控制系统的模型是一个反馈环结构。
  实时信息处理系统:系统仅从外界系统中获得当前状态并进行相应处理。它不直接控制外界系统的变化。

3 多任务
  实时任务:周期任务,偶发任务,非周期任务。实时任务要求要满足时限。
  非实时任务:手机上大多数任务就是非实时任务。非实时任务要求要使其响应时间尽可能短。
 
4 实时系统的特点:
  时间的约束性time consttaint
   是最基本的目标:系统应该能够提供对时间的正确性进行指定的方法。
   通用系统的延迟不能满足。实时系统的、任务具有一定的时间约束。
   系统提供一种指定时间尺度的方法。
  可预测性predictability
   系统能够对实时任务的执行时间进行判断,确定是否能够满足任务的时限要求。
   嵌入式系统的两个可预测性:软件系统的可预测性,硬件系统的可预测性。
  可靠性reliability
   已成为衡量实时系统性能不可缺少的重要指标。
   强稳定性,弱交互性。大部分还有硬件的容错,也有软件的容错。

5 实时系统与通用系统的区别
  通用系统(劫富济贫):方便用户管理计算机资源,追求系统资源最大利用率。任务没有等级。
  实时系统(劫贫济富):调度的实时性,可确定性,高可靠性。任务有等级。

6 实时系统的相关定义
  紧时间约束:在满足任务时限的同时,留给系统的事件比较紧张。由任务的余量小而引起。
  松事件约束:与紧时限概念相反,指在满足任务时限的同时,留给系统的事件比较宽松。
  关键任务:任务的重要程度,若任务在时限之前不能完成,则会产生灾难性后果。
  弱实时任务:弱时限任务,若该任务不能在时限来之前完成,其结果的可用性将逐渐下降。
  强实时任务:要求该任务在时限之前完成,否则其结果将失去可用性。
  时限粒度:任务从启动时刻到时限之间的时间。

7 实时调度算法分类
  优先级调度:不事先计算任务的调度表,而是在作业释放以后,给它们分配优先级,并按照优先级次序把作业放入就绪队列。
  优先级调度分两种情况:固定优先级算法(为每个任务中的所有作业分配相同的优先级),
                        动态优先级算法(给每个任务的单个作业分配不同的优先级)
  速度单调算法:最著名,算法非常简单有效,便于实现。属于固定优先级算法,算法思想就是使用频率高的就优先级高。 
  时限单调算法:
按照任务的相对时限来分配优先级,相对时限越短,优先级越高。属于固定优先级算法。
  EDF算法:最早时限优先算法,截止期优先调度算法,是使用最多的一种动态优先级调度算法。
  最短空闲时间优先算法:空闲时间为已执行过的时间长度。属于动态优先级算法。
  非优先级算法:反向EDF算法,又称为最迟释放时间算法。
 
8 嵌入式实时操作系统基本功能
  首要目标是提供保证实时性的方法
  实现操作系统的低开销
  保证内核以及其他关键的可重入性
  嵌入式实时操作系统RTOS中的相关概念:占先式内核,可重入,优先级反转
  操作系统的实时性一方面是多大程度上充分发挥硬件潜力,即综合速度快慢的问题。另一方面同时也是反映的速度在多大的程度上得到保证的问题。

9 抢占式调度与非抢占式调度
  抢占式调度优点是实时性好,反映快,调度算法相对简单,可优先保证高优先级任务的时间约束。缺点是上下文切换多。
非抢占式调度优点上下文切换少,缺点是一般情况下,处理器有效资源利用率低,可调度性不好。
  商业上销售的内核都是抢占式的内核。
 

10 可重入性
  可重入型函数可以被一个以上的任务调用,而不必担心数据的破坏。
  在并行运行的环境中非常重要。嵌入式系统应该尽量写成可重入函数。

11 RTOS基本结构
  实时多任务CORE包括任务管理,定时器,MEM,资源管理,事件和消息管理。
  任务管理:多任务和基于优先级的任务调度。
  定时器:系统的实时时钟服务,以及各个定时任务的调入等
  MEM:管理系统的各种内存资源,如DRAM,ROM,FLASHRAM
  资源管理:管理系统的各种资源系统如系统的各种设备,端口,中断等。
  事件和消息管理:管理各种系统级的事件,如实时中断响应,各种异常等。任务间同步和通信(信号量和邮箱)以及各种系统消息和应用程序之间的通讯。
 
12 Linux既不是完全的可剥夺,也不是完全的不可剥夺。

13 Kernel分为:微内核与单内核
  微内核尽量小移植方便,有效利用内存。内核不提供操作系统相关的服务而提供这些服务的相关的机制。一般嵌入式操作系统都是微内核。单内核设计思想是内核尽量全,内核提供完整的操作系统服务。Linux和WinCE就是普通的单内核系统。
  微内核是嵌入式操作系统的主流。
  可靠性:不会因一个组件出现奔溃。
  实时性:内核较小改造为抢占式可重入方便。
  安全性:内核符合最小权限准则。模块多接口多导致安全降低。
  开发方便:小而且简单,容易理解,容易维护。各模块可以独立开发。系统配置灵活方便。
  性能差:系统调用需要用户态和内核态转换
 
14 操作系统裁减已经逐步被放弃,因为裁减的功效很有限,而且存储容量不再受到限制。

原创粉丝点击