作业调度算法

更新时间:2021-07-16

作业调度算法


  作业调度算法


  作业调度算法一般有三种状态:正在运行(Running,正在CPU中执行)待命(Ready,等待执行)阻塞(Blocked,任务暂停,等待一个事件的发生,例如接收一组数据)。


  由于CPU在某个时间只能执行一个任务,大部分任务,在大部分时间,处于阻塞或待命状态。可能会有大量项目在待命列表里等待执行,这取决于系统所需的任务数量以及调度器的类型。


  通常情况下,对于简单的时间触发式调度器来说,待命任务列表的数据结构的设计要尽可能缩短最坏情况下,程序在调度器关键部分的执行时间,以防止其他任务一直在待命列表中,无法及时执行。因此,在这种调度器中,应尽可能避免抢占式任务,甚至应该关闭调度器之外的所有中断。当然,待命任务列表的数据结构也应根据这个系统需要的最大任务数量做进一步的优化。


X