实时 调 度 实现实时调度的基本条件 提供必要的信息 () 就绪时间 () 开始截止时间和完成截止时间 () 处理时间 () 资源要求 () 优先级 系统处理能力强 在实时系统中通常都有着多个实时任务若处理机的处理能力不够强则有可能因处理机忙不过来而使某些实时任务不能得到及时处理从而导致发生难以预料的后果假定系统中有m个周期性的硬实时任务它们的处理时间可表示为Ci周期时间表示为Pi则在单处理机情况下必须满足下面的限制条件 系统才是可调度的假如系统中有个硬实时任务它们的周期时间都是 ms而每次的处理时间为 ms则不难算出此时是不能满足上式的因而系统是不可调度的 解决的方法是提高系统的处理能力其途径有二其一仍是采用单处理机系统但须增强其处理能力以显着减少对每一个任务的处理时间其二是采用多处理机系统 假定系统中的处理机数为N则应将上述的限制条件改为 采用抢占式调度机制 当一个优先权更高的任务到达时允许将当前任务暂时挂起而令高优先权任务立即投入运行这样便可满足该硬实时任务对截止时间的要求但这种调度机制比较复杂 对于一些小的实时系统如果能预知任务的开始截止时间则对实时任务的调度可采用非抢占调度机制以简化调度程序和对任务调度时所花费的系统开销但在设计这种调度机制时应使所有的实时任务都比较小并在执行完关键性程序和临界区后能及时地将自己阻塞起来以便释放出处理机 供调度程序去调度那种开始截止时间即将到达的任务 具有快速切换机制 该机制应具有如下两方面的能力 () 对外部中断的快速响应能力为使在紧迫的外部事件请求中断时系统能及时响应要求系统具有快速硬件中断机构还应使禁止中断的时间间隔尽量短以免耽误时机(其它紧迫任务) () 快速的任务分派能力在完成任务调度后便应进行任务切换为了提高分派程序进行任务切换时的速度应使系统中的每个运行功能单位适当的小以减少任务切换的时间开销 ——返回教材目录 了解更多计算机相关基础课程视频 |