进程调度方法

  • 先来先服务(FCFS)调度算法(非抢占调度方式)
  • 短进程优先(SPF)调度算法(抢占调度方式)
  • 优先级调度算法(抢占调度方式)
  • 时间片轮转调度算法(抢占调度方式)
  • 多级反馈队列调度算法


先来先服务(FCFS)调度算法(非抢占调度方式)

先来先服务(FCFS)调度算法总是把处理机分配给最先进入就绪队列的进程,一个进程一旦分得处理机,便一直执行下去,直到该进程完成或阻塞时,才释放处理机。

短进程优先(SPF)调度算法(抢占调度方式)

短进程优先(SPF)调度算法是从就绪队列中选择一个估计运行时间最短的进程,将处理机分配给它,直到完成或发生某时间而阻塞时,才释放处理机。

优先级调度算法(抢占调度方式)

优先级调度算法每次从就绪队列中选择优先级最高的进程,并分配给处理机运行。

时间片轮转调度算法(抢占调度方式)

时间片轮转调度算法主要适用于分时系统。在这种算法中,系统将所有就绪进程按到达时间的先后次序排成一个队列,进程调度程序总是选择就绪队列中的第一个进程执行,即先来先服务的原则,但是仅能运行一个时间片。在使用完一个时间片后,即使进程并未完成其运行,它也必须释放出(被抢占)处理机给下一个就绪的进程,而被抢占的进程返回到就绪队列的末尾重新排队,等候再次运行。

多级反馈队列调度算法

多级反馈队列调度算法是目前被公认的一种较好的进程调度算法。该算法设置多个就绪队列,并为各个队列赋予不同的优先级。该算法赋予各个队列中进程执行时间片的大小也各不相同,在优先权愈高的队列中,为每个进程所规定的执行时间片就愈小。当一个新进程进入内存后,首先将它放入第一队列的末尾,按FCFS原则排队等待调度。当轮到该进程执行时,如它能在该时间片内完成,便可准备撤离系统;如果它在一个时间片结束时尚未完成,调度程序便将该进程转入第二队列的末尾。