1 / 54

实时系统

实时系统. 课程代码: 021556 北京航空航天大学 电子信息工程学院. 提纲. 课程简介 课时安排 讲授方法 和 学习方法 考核方式. 课程简介. 所谓“实时系统” Real-Time Systems “ 实时系统是指系统的正确性不仅仅取决于逻辑运算结果,而且取决于产生这些结果的 时间 。” 它们对于外部激励的 及时 响应是至关重要的。. 课程简介. 应用 嵌入式系统的多任务处理、分布式系统互连与外界环境的交互,必须保证任务的实时性; 综合化航空电子系统处理和互连的实时性能保证要求更为严苛: 安全关键性 ——safety critical

pilar
Download Presentation

实时系统

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 实时系统 课程代码:021556 北京航空航天大学 电子信息工程学院

  2. 提纲 • 课程简介 • 课时安排 • 讲授方法 和 学习方法 • 考核方式

  3. 课程简介 • 所谓“实时系统” Real-Time Systems “实时系统是指系统的正确性不仅仅取决于逻辑运算结果,而且取决于产生这些结果的时间。” 它们对于外部激励的及时响应是至关重要的。

  4. 课程简介 • 应用 • 嵌入式系统的多任务处理、分布式系统互连与外界环境的交互,必须保证任务的实时性; • 综合化航空电子系统处理和互连的实时性能保证要求更为严苛: • 安全关键性——safety critical • 任务关键性——mission critical • 本课程讲授与实时系统和实时通信紧密相关的调度方法、分析方法和性能评价方法。

  5. 课时安排 —— Syllabus —— (共32-8课时) • 实时系统的概念 —— 2 • 周期任务的调度 —— 4 • 非周期和偶发任务调度 —— 4 • 时间触发调度 ——不占课时 • H Koptez教授讲座 20131010 pm • 会场原因F706是否有机会?——留联系方式等通知 9/27 10/11 10/18 10/18 讨论时间触发调度的有关内容

  6. 课时安排(续) • 共享介质网络实时通信的调度 —— 2 • 交换式网络实时通信的保证机制和服务策略 —— 4 • 实时通信的网络演算分析方法 —— 4 • 实时系统和实时通信的形式化验证技术 —— 4 • 选讲—— 2 • AADL描述 或 轨迹法分析方法 等,或者 • 讨论 Time-Triggered (如是,挪到前面安排) 10/25 10/25 11/1 11/1 11/8 11/8 11/15

  7. 讲授方法 及 学习方法 • 主要参考书 • Liu Jane W.S. 《实时系统》. Prentice Hall, 2000 / 高教社, 2003. • LeBoudec J-Y, Thiran P. “Network Calculus”. Springer-Verlag, 2004.[2011 New Ver.] http://ica1www.epfl.ch/PS_files/NetCal.htm • 新入围参考书 • Kopetz H. Real-Time Systems -- Design Principles for Distributed Embedded Applications 2nd Ed. 2011. • CHENG Albert M K. Real-Time Systems -- Scheduling, Analysis and Verification [M]. Wiley-Interscience, 2002. • 相关的学术期刊,专业会议,如: • Kluwer J. Real-Time Systems, • IEEE Trans. on Info./Indu. Info./JSAC, Proc. of IEEE, • RTSS、IEEE TR-RTS、ECRTS、RTCSA、RTAS、DATE.

  8. 评分方案 • 一定的出勤 , 10分; • 4次作业,每次1~2题,5分/次,批改五分制打分; • 作业时限内上交有效。 考核方式 • 平时成绩 30% • 作业 • 习题 贵在精、不在量 • 期末开卷考试成绩 70%

  9. 联系方法 • 李峭 • avionics@buaa.edu.cn • 8233 8894 • mobile phone … • 新主楼 F710 • 202教研室——航空电子与总线通信课题组 • 课程资料 http://avionics.buaa.edu.cn • Under Construction…(不日即可有课件下载) RT Sys

  10. 一、实时系统的概念

  11. 提纲 • 定义与涵义 • 讨论:对于实时系统概念的误解 • 应用的例子 • 属性与性能参数

  12. 定义与涵义 应用的例子 属性与性能参数 一、实时系统的概念 2013

  13. 定义 “实时系统是指系统的正确性不仅仅取决于逻辑运算结果,而且取决于产生这些结果的时间。” “A real-time system is one in which the correctness of the system depends not only on the logical results, but also on the time at which the results are produced.” [Stankovic 1996]

  14. 跳过 Systems, whose correctness depends (not only)on the correct logical results of computation, (but also)on meeting all deadlines. 定义 “实时系统是指系统的正确性不仅仅取决于逻辑运算结果,而且取决于产生这些结果的时间。” “A real-time system is one in which the correctness of the system depends not only on the logical results, but also on the time at which the results are produced.” [Stankovic 1996] • 可见,具体实现的规模、精度和速度都不是界定实时系统定义的本质特征,强调的是与时间有关的属性。

  15. 硬 v.s.软 Systems, whose correctness depends (not only)on the correct logical results of computation, (but also)on meeting all deadlines. (Weaker…but ) Systems, whose quality depends (not only)on the correct logical results of computation, (but also)on the time those results were produced. 定义 “实时系统是指系统的正确性不仅仅取决于逻辑运算结果,而且取决于产生这些结果的时间。” “A real-time system is one in which the correctness of the system depends not only on the logical results, but also on the time at which the results are produced.” [Stankovic 1996] Flexible

  16. 最大熵 maximum entropy 可预测性 predictability 时间确定性 time deterministic 涵义——及时性 和 时间可预测性 • 实际上,大多数情况下,实时调度机制的“overhead”使系统的平均运行速度减慢。 • 与时间有关的属性 • 及时性 Timeliness • 可预测性 Predictability 和 时间确定性 • 可预测的功能、性能和行为,关系到安全/任务的保证 • 误区——速度更高的处理器、带宽更宽的网络,就可以满足系统的实时性要求。 Real-time v.s. “Real-fast” • 实时 :设计充分考虑了时间约束条件; • “实快” :蛮干。

  17. 涵义——实时系统的严酷性与复杂性来自于: • 物理世界的严酷性 • 连续控制,如:网络化(Networked)控制系统 • 计算机/通信系统自身的复杂性与同步关系 • 离散事件动态系统(DEDS) • 而,时间… • 供给毫无弹性 • 无法储存 • 无法取代(具有竞争性的资源) • 无法失而复得(单向,事物的顺序与因果依赖于时间)

  18. 涵义——实时系统的严酷性与复杂性来自于: • 误区——常规的运筹学(OR)方法已能够解决实时系统的设计验证问题。例如:Job Shop、Just-In-Time… 可以借鉴OR的处理方法,但是… • 在“时间暴君”的制约下,找到可行、甚至优化的解决方案,必须与应用需求和外界交互操作紧密相关; • 一般的组合优化中任务是一次性的,而实时系统是持续运行的。 • 物理世界的严酷性 • 连续控制,如:网络化(Networked)控制系统 • 计算机/通信系统自身的复杂性与同步关系 • 离散事件动态系统(DEDS) • 而,时间… • 供给毫无弹性 • 无法储存 • 无法取代(具有竞争性的资源) • 无法失而复得(单向,事物的顺序与因果依赖于时间) • 实时系统 更贴近真实世界和工程实践

  19. 常规 实时系统 • 性能参数的平均值 • 最坏情况下的性能 涵义——实时系统与性能评价 • Performance Evaluation & Perf. Engineering 解决实时系统的问题,需要独特的性能评价方法 • 随机分布假设下排队论 • 确定性/概率保证排队论 • 实时系统的理论与方法 包含 性能评价,但是, • 还包含实时行为的 规格说明 与 形式化验证,以及 • 使用时序约束(有时是隐含地)确保设计的正确性。

  20. 定义——硬实时 与 软实时 • Hard Real-Time 和 Soft Real-Time • 定时约束(timing constraint)的 “硬” 和 “软” • 硬实时——“…截止期限被错过,会导致灾难性的后果” • 确定性约束、概率保证约束 和 效用函数约束 • 根据定时约束的强度和灵活性不同,分为… 这样的定义是描述性的,并未说明硬实时约束本身的要求 Best-Effort

  21. imprecisecompu. b a f e c d g 定时约束的例子 Firm RT Weakly HRT • “相对截止期限等于周期,必须在1个周期内完成处理” • “5个连续的控制计算中,最多只能有1个响应时间超时” • 可以容忍一些作业(job)超过截止期限,但容忍的程度和时间窗口被明确地规定 • “保证响应时间超过50ms的概率不超过10-6” • 约定:及时得到的不精确结果,优于迟到的精确结果 • “用统计量定义约束,超过时限平均频度不大于2次/分” • 使用某种有用性函数表示定时约束 确定 确定 确定 概率保证 “软” BE “软” 广义的约束

  22. 定义 讨论:硬实时 v.s. 软实时 • 硬实时系统 • 硬实时约束 • 任何情况下对所有硬实时约束进行验证  • 保守的设计,悲观的性能评价,最坏情况性能保证 • 强调:时间确定性 和 调度的确定性结果 • 软实时系统 • 兼顾:时间可预测性 和 实时服务质量(QoS) • 优化目标是复杂的,评价指标是连续的 • 即使是“硬实时”,也通过合理地设定时间可预测性约束,提升系统的灵活性和容错能力。

  23. 定义 讨论:硬实时 v.s. 软实时 • 误区——设计硬实时系统 一定比 设计软实时系统 难 大部分关键性系统是“硬实时”的,这类系统设计责任重大、验证细致严格,因此习惯上认为“硬实时”比“软实时”的实现困难。然而, • 需求:重要性 、及时性 和 时间值的粒度 是有区别的属性 • 总体:设计优化程度 和 设计优化的可预测性 是相互制约的不同目标 • 硬实时系统 • 硬实时约束 • 任何情况下对所有硬实时约束进行验证  • 保守的设计,悲观的性能评价,最坏情况性能保证 • 强调:时间确定性 和 调度的确定性结果 • 软实时系统 • 兼顾:时间可预测性 和 实时服务质量(QoS) • 优化目标是复杂的,评价指标是连续的 因此,仅从设计与优化所采用的理论方法和手段来看: • “HRT is hard, but SRT is even harder。”—— E.D Jensen

  24. f d 概率保证 BE 讨论:软实时 v.s. 尽力而为 Fuzzy! —— 概率保证 与 统计平均 d. “保证响应时间超过50ms的概率不超过10-6” f. “用统计量定义约束,超过时限平均频度不大于2次/分” “量变”“质变” • 时间约束失效为稀有概率事件,性能评价的方法不同于常规的统计方法 • (可参见后续 概率保证的可调度分析 和 随机网络演算 的内容)

  25. 讨论:软实时 v.s. 尽力而为 区别在于: • 是否将时间可预测性作为首要的设计约束,并专门采用某种调度机制保证 • 概念 —— 调度 与 派发[Jensen 1999] • Scheduling —— 对于一个可重用资源(或多个依次可重用资源)的竞争性访问,创建一个偏序表(调度表)加以限定; • Dispatching ——将访问权授予当前符合条件的(eligibility)实体,而条件的符合性判定可能通过调度器,也可能缺乏调度器的指导。

  26. 讨论:“有用性函数”——时间效用函数 • 效用 —— Utility • 效用是作业延缓程度的函数 • 表示延缓后,处理(或传输)结果的有用性,也可表示系统整体的运行性能 例如:硬实时(一般意义下)

  27. 例如:安全关键性 硬实时: • 一般认为,效用函数是描述软实时约束的工具,但它可以是一种广义的描述。 • 误解——效用函数的选择不是自然而然的事,很难验证选择的合理性,同时也很难验证。 对于“自然而然”理解的角度不同: • 计算机——不会自然地考虑应用需求 • 应用需求——”application-specific”的实时服务质量 • 例如:延迟对跟踪精度的影响 目前,效用函数在实时系统调度中未有得以推广,既不可以迷信它的理论,也不可以忽视其所强调的应用对实时性能的复杂需求。

  28. 整体 子集 飞行 任务 定义——HRT、SRT和混合关键性系统 • 硬实时系统——硬实时约束 • 软实时系统——软实时约束 如果系统中既含有硬约束,又含有软约束…? 如果系统中各部分评价和验证的强度不同…? • 所谓的“mixed criticality”系统[Baruah 2010] 例如:军用航空电子系统的 flight-critical 和 mission-critical • 飞行关键性认证——在悲观假设下循环试验 • 任务关键性验证——扩展试验 • 实践:ARINC 653 APEX的“space-time partitioning”(分区管理)

  29. 定义与涵义 应用的例子 属性与性能参数 一、实时系统的概念 2013

  30. D/A A/D uk ek 状态模型差分 yk 应用的例子——计算机控制 周期采样 外界环境 • 计算机控制系统 • 延迟惯性环节,需要确定的时延抖动,或有确定界限 u(t) y(t) 作动器 传感器 受控对象 actuator sensor 差分 e(t) 控制器 操纵量

  31. D/A A/D 网络,虚拟链路 yk uk ek 状态模型差分 yk 应用的例子——数字控制 周期采样 外界环境 • 计算机控制系统 • 延迟惯性环节,需要确定的时延抖动,或有确定界限 • 网络化(Networked)控制系统 u(t) y(t) 作动器 传感器 受控对象 actuator sensor 差分 e(t) 控制器 操纵量

  32. 应用的例子——层次化的实时系统 应答 指令 操作者—系统 接口 [Liu 2003] p9 • 空中交通管制(ATC) • 飞行管理(FMS) • 飞行控制 • 低层控制规律计算周期时间us, ms,…, s; • 高层控制规律计算复杂而多变,周期时间min,甚至hour。 状态观测器 空中 交通管制 来自探测器 虚拟对象 导航仪 状态观测器 飞行 管理系统 虚拟对象 状态观测器 飞行 控制器 物理对象 大气数据 系统

  33. 定义与涵义 应用的例子 属性与性能参数 一、实时系统的概念 2013

  34. 属性与性能参数 • 主动资源 和 被动资源 • 主动资源——处理器、调度器、服务器 • 被动资源——存储器、序列号、互斥量、I/O总线 • 时间资源——无弹性、不可重用/取代、不可逆 • 约定:… • 可以将主动资源统称为“处理器”—— P • 将被动资源 称为 “资源” —— R • “资源”的可重用(reusable)

  35. 属性与性能参数 • 任务 与 作业 • 作业(job)能够被系统调度和执行的工作单位 ——记为 Jk,Ji,j,作业集 J; • 任务(task)能够共同提供某种系统功能的一组相关的作业 ——记为 Ti。 • 例如:控制规律的计算、某类数据包通信任务

  36. 属性与性能参数 • 可调度实体 和 不可调度实体[Jensen 2003] • 线程、进程、处理任务、通信任务、虚拟链路 • 中断服务例程、操作系统、系统软件服务(调度器、派发机构)、网络通信服务、网络流控机构、队列 • 说明:不可调度实体的 及时性 取决于系统的设计、集成与实现,而与调度器无关; • 说明:可调度实体的接受的调度可以是广义的——操作系统、系统软件、采用人工或规划进行的离线设计; • “鸿沟”——实用者 和设计者;前者关心并“迷信”不可调度实体的性能,后者强调通过调度 可调度实体 对于定时约束的满足。——皆不可厚此薄彼! Schedulable Non-Schedulable

  37. 误区——使用实时操作系统(RTOS)的系统就是实时系统误区——使用实时操作系统(RTOS)的系统就是实时系统 • RTOS提供具有时间确定性的系统调用,它们作为底层机制使实时系统的设计更为便利,但是… • 实时性能的保证还依靠于 可调度实体 的调度方案的合理设计与实施。 • 如果设计合理,避免非实时操作系统的不利之处,也可以在非实时操作系统上实现实时应用。 属性与性能参数 • 可调度实体 和 不可调度实体[Jensen 1999] • 线程、进程、处理任务、通信任务、虚拟链路 • 中断服务例程、操作系统、系统软件服务(调度器、派发机构)、网络通信服务、网络流控机构、队列 • 说明:不可调度实体的 及时性 取决于系统的设计、集成与实现,而与调度器无关; • 说明:可调度实体的接受的调度可以是广义的——操作系统、系统软件、采用人工或规划进行的离线设计; • “鸿沟”——实用者 和设计者;前者关心并“迷信”不可调度实体的性能,后者强调通过调度 可调度实体 对于定时约束的满足。——皆不可厚此薄彼! Schedulable Non-Schedulable

  38. 属性与性能参数——不可调度实体的属性 • 不可抢占 和 可抢占 调度 • Non-preemptive • 作业一旦被派发(dispatch),就从头到尾执行。 • Preemptive • 作业可以交叉执行,调度器可以挂起较低紧急程度的作业,开始执行更高紧急程度的作业,当后者执行后从挂起点恢复执行。 • 抢占调度——场景(context)切换开销(overhead) • 对于允许抢占操作的调度器,是否可以抢占,还… • 依赖于 作业 的可抢占性 —— 有的作业会有一小段是不可抢占的,例如:关中断; • 依赖于 资源 的可抢占性 —— 例如:事务操作的原子性

  39. 对作业的调度 属性与性能参数——不可调度实体的属性 • 调度方式 • (全局)时钟驱动的调度方式 • 一般由同步时钟触发(time-triggered) • 主要为静态调度——适用于基本具有确定性的系统 • 少量的非周期和偶发作业——接受测试 和 空闲挪用 • 时间资源 访问仲裁(access arbitration) 的调度方式 • 优先级驱动——例如:EDF、RM、最小完成数 等 • 时间资源 持有控制(holding control)的调度方式 • 加权Round-Robin,令牌传递(token passing) • 对任务的调度——如:准入控制

  40. 属性与性能参数——不可调度实体的属性 • 调度算法 • 可行调度——所有作业满足定时约束 • 可调度(schedulable)——如果使用某个调度算法,对于作业集合J,调度器总能产生可行调度,则称根据此调度算法的作业集合是可调度的。 • 可调度性(schedualability) • 最优调度算法——对于任意的存在可行调度方案的作业集合,给定的硬实时调度算法总能产生可行调度,则称该调度方法是最优的。

  41. 属性与性能参数——可调度实体 • 释放时间(时刻)ri • 从释放时间(release time)ri开始,或释放之后,只要数据和控制依赖条件得以满足,作业Ji就可以被调度和派发。 • 固定的释放时间, • 释放时间抖动 [ri- , ri+], • 释放时间间隔(inter-release), • 释放时间 ~ 到达时间(arrival time)。 • 执行时间 ei • 在所需资源都具备的条件下,Ji自身执行所需的时间。 • 在可抢占调度中,执行时间是各段作业执行耗时之和, • 最小执行时间和最大执行时间 [ei- , ei+], • 确定性设计 保守地取 最大执行时间。

  42. 属性与性能参数——可调度实体 • 响应时间 • 从作业被释放的时刻到它被完成的时刻之间的时间长度; • 最大允许的响应时间为作业的相对截止期限(relative deadline) • 延迟 • 响应时间=固定延迟+可变延迟; • 固定延迟=执行时间+其它确定的时间开销; • 可变延迟 与 调度策略和运行状态有关,主要为 等待接受处理 与 等待访问公共资源 所需时间,也可以是根据调度需要有意为之的等待。 • 端到端延迟 (end-to-end delay) • 与应用有关的作业链 • 网络传输——从应用层到应用层

  43. 属性与性能参数——可调度实体 • 截止期限 • 相对截止期限(relative deadline) • 绝对截止期限(absolute deadline) • 绝对截止期限=释放时间+相对截止期限 • 时延抖动(jitter) • [最好情况下的响应时间,最坏情况下的响应时间] • 对作业的行为施加定时约束,最简单的形式就是对 释放时间 和 相对截止期限 进行限定。

  44. 属性与性能参数—— 调度器  可调度实体 • 优先级 • 可调度实体属性的参数值——如:EDF • 调度器的实现 —— 系统服务的优先级 • 参数值 到 实现的优先级 之间的 映射 • 如果系统的分布范围较大、复杂度较高 • 在不同的平台上,调度器的实现如何统一? • 服务质量(QoS)——“参数化品质”,直接由应用的性能需求设定品质需求; • 在本地,根据具体实现,映射调度器的优先级。

  45. 属性与性能参数——实时任务的模型 • 建模的目的 • 描述:对目标系统的属性进行确切地描述; • 演绎:采用分析工具,从属性中推导出其它属性,或识别其中的规律; • 忽略:模型可以忽略不重要的细节。 • 对于 实时系统建模 • 涉及的属性——时间行为+系统结构 • 推导的目的——定时约束是否能得到满足?

  46. 属性与性能参数——实时任务的模型 • 周期任务(periodic task)模型 • Ti—— 任务,包含一系列作业; • Ji,j—— 作业 • pi —— 周期,作业的固定释放间隔时间 • φi—— 第一个作业的释放时间 • Di —— 相对截止期限 • ei—— 执行时间 • WCET —— 最坏情况下的执行时间 • 四元组表示周期任务Ti—— (φi , pi, ei , Di)

  47. 属性与性能参数——实时任务的模型 • 周期任务模型 • H —— 超周期 {pi}i=1,…,n的最小公倍数 • 每个超周期内作业的个数 N= • ei/pi—— 任务Ti 的利用率(utilization) • U ——总利用率

  48. 属性与性能参数——实时任务的模型 实时系统要响应外部事件,执行偶发或非周期作业,它们的释放(到达)时间是随机的。 • 偶发任务 有 强截止期限 的要求,偶发任务的设计需要 最小到达间隔 的限定; • 非周期任务 到达间隔 没有限定。 • 偶发任务(sporadic task)模型 • pi —— 最小到达间隔(MINIMUM inter-release time) • φi—— 第一个作业的释放时间 • Di —— 相对截止期限 • ei—— 执行时间 一般事先不知道 执行时间

  49. 属性与性能参数——实时任务的模型 • 非周期任务(aperiodic task)模型 • pi =0 —— 无最小到达间隔 • Di —— 相对截止期限(软) • 对于非周期作业,仅希望快速响应;响应延迟是恼人的,但可以容忍。

  50. 属性与性能参数——实时任务的模型 • 周期作业、偶发作业和非周期作业

More Related