实时系统静态调度和动态调度

静态调度方法中,任务的分配离线进行的,即在实时任务正式在处理机上调度执行前,先把任务在处理机上的分配和调度时间安排好,在任务正式开始执行后按照预先的调度方案执行。这种调度方法主要用于周期任务的调度,它的优点在于能够预先安排好调动,减少任务调度过程中的开销;而缺点在于缺乏灵活性,在实际的调度中不能够及时地根据系统资源和任务的执行情况进行及时的调整。

与静态调度方法相对应的是动态调度。在实时系统中,很多任务并非都以周期方式在处理机上进行调度,更多任务,特别是非周期任务都是随机到达系统并动态调度执行的。在动态调度方法中,任务的分派和可调度性测试都是在系统运行时在线进行的。这种情况下,可调度性测试实际上变成了- -种接受测试(acceptance test), 测试动态到达任务的截止期是否会被保证,如果无法保证任务的截止期,任务将被拒绝调度。可以看出,动态调度与静态调度相比有更好的灵活性,然后由于可调度性测试需要在线进行,它的调度算法的复杂度不能太高,并且由 于无法保证是否可以被调度,算法的可预测性(predictability)很差。
 

你可能感兴趣的:(实时系统)