嵌入式系统实时调度与设计表示全解析
1. 实时分析概述
实时性能并非追求极致的速度,而是在满足需求的前提下,尽可能降低整体成本。要实现实时操作,需遵循以下步骤:明确所需假设、了解系统、选择合适的实时调度方法,并进行分析以确保能按时完成任务。
1.1 假设与术语
为确保在各种情况下都能满足实时截止时间,我们需要做出一些假设,尽管这些假设在实际中并非完全成立,但它们是很好的起点:
- 所有任务 $T_i$ 完全周期性 :假设有 $n$ 个任务,编号为 ${ T_0, T_1, \ldots, T_{N - 1} }$,每个任务在其周期内仅运行一次。对于非周期性任务,使用最坏情况(最快)的到达间隔时间;若任务周期长度可变,则使用最快的周期进行调度。
- 所有任务 $T_i$ 完全独立 :避免一个任务阻塞另一个任务。但在实际中,由于共享资源(如互斥保护的共享变量和复用的 A/D 转换器)的存在,此假设往往难以实现。若该假设不成立,任务会有非零的阻塞时间,使调度变得复杂。
- 每个任务的最坏情况执行时间 $C_i$ 已知 :需了解每个任务单独执行所需的 CPU 时间,并在计算中使用最长的最坏情况执行时间(WCET)。确定 WCET 可能是一项艰巨的任务,可借助处理器自带工具或对实际系统进行测量。为确保准确性,可在 WCET 值上增加一定余量。
- 截止时间 $D_i$ 大于或等于周期 $P_i$ :每个任务必须在下一次可运行之前完成执行。若截止时间短于周期,则假设一个更快的周期等于该截止时间,以确
嵌入式系统实时调度与设计表示解析
超级会员免费看
订阅专栏 解锁全文
2334

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



