嵌入式系统实时调度与状态图设计解析
1. 实时调度概述
在嵌入式系统中,实时性能至关重要,它关乎系统能否在规定的时间内完成任务。实时调度并非追求极致的速度,而是确保任务在截止期限前完成,同时要考虑资源的有效利用。
1.1 实时调度的重要性
许多嵌入式系统都是实时系统,计算结果的时效性直接影响其可用性。例如,工业自动化中的控制系统,若不能及时响应传感器数据,可能导致生产事故。因此,了解系统中各任务的频率、截止期限和计算时间,采用合适的调度方法,是保证系统实时性的关键。
1.2 实时调度的假设与术语
为了进行有效的实时调度,需要做出一些假设:
- 任务周期性 :所有任务 (T_i) 都是完全周期性的,每个任务在其周期内只能运行一次。对于非周期性任务,使用最坏情况下的到达时间间隔;若任务周期长度可变,则使用最快的周期进行调度。
- 任务独立性 :所有任务 (T_i) 完全独立,避免一个任务阻塞另一个任务。但在实际中,共享资源(如互斥保护的共享变量和多路复用的 A/D 转换器)可能会导致任务之间存在非零的阻塞时间,这会使调度变得复杂。
- 已知最坏执行时间 :需要知道每个任务的最坏执行时间 (C_i),即任务在孤立情况下执行所需的最长 CPU 时间。确定最坏执行时间可能需要大量的工作,可通过一些工具或实际测量来获取。为了确保准确性,建议在计算时增加一定的余量。
- 截止期限大于等于周期 :每个任务的截止期限 (D_i) 大于或等于其周期 (P_i),即
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



