3-3 实时调度
1、引入
什么是实时系统?
1.指系统能够在限定的响应时间内提供所需水平的服务。
2.指计算的正确性不仅取决于程序的逻辑正确性,也取决于结果产生的时间,如果系统的时间约束条件得不到满足,将会发生系统出错。
实时任务:具有明确时间约束的计算任务,有软/硬,随机/周期性之分。
硬实时任务:必须满足任务对截止时间的要求
软实时任务:联系着一个截止时间,但不严格,可偶尔错过,不会对系统造成大的影响。
实时系统的任务往往带有某种程度的紧迫性,因而实时系统的调度有某些特殊要求。
为此引入适合的实时调度算法
为保证系统正常工作,调度应具备下列条件
2、实现实时调度的基本条件
1)提供必要的信息
为了实现实时调度,系统应向调度程序提供有关任务的下述信息:
就绪时间。该任务成为就绪状态的时间。
开始截止时间、完成截止时间。
处理时间。从开始执行到完成所需时间。
资源要求。任务执行时所需的一组资源。
优先级。根据任务性质赋予不同优先级。
2)系统处理能力足够强
处理能力不足可能会出现某些实时任务不能得到及时处理,导致难以预料的后果。
如: 系统中有M个周期性的硬实时任务,处理时间为Ci,周期时间表示为Pi,
单机系统中必须满足条件
一个系统,6个硬实时任务,周期都是50ms,每次处理时间10ms。根据公式,系统是不可调度的。10*6/50
* 提高系统处理能力的方法
增强单机系统的处理能力
采用多处理机系统
此情况下需满足
∑( Ci / P