进程调度算法

  1. 先来先服务(FCFS):直接从就绪队列中取出进程为其分配处理机。
  2. 短作业优先:在就绪队列中选出估计运行时间最短的进程优先为其分配处理机。
  3. 抢占式优先调度算法:当有更高优先级进程进入就绪队列,则立即停止当前进程运行而将处理机优先分配给改更高优先级进程。
  4. 非抢占式优先调度算法:当有更高级优先级进入就绪队列,等待当前进程执行完毕后再将处理机分配给该更高优先级进程。
  5. 高响应比优先调度算法:这个算法可以使进程的优先级发生变化,这样长时间等候的进程优先级也会升高,保证其有机会获得处理机。优先权的算法是(等待时间+处理机处理时间)/处理机处理时间。这个算法保证了优先级能够动态的变化,使长时间得不到处理机的进程优先级升高。
  6. 时间片轮转法:每个进程都将获得固定时间的处理机,服务时间到了,就将处理机分配给下一个进程,保证了每个进程都有机会获得处理机。
  7. 多级反馈队列调度算法。
    具体方法是:
    设置多个就绪队列(也即所谓的多级),每个就绪队列的优先级不同,优先级从高到低排列。并对每个队列分配不同长度的时间片,优先级高的队列中每个进程获得的时间片长度少。进程先进入第一个队列,按照时间片轮转的方式进行处理机分配,若该进程在规定的时间片内未处理完,则该进程进入第二个队列,若还没完成,则进入第三个队列等等。如果处理处理机正在处理某进程时,有优先级更高的进程进入就绪队列,则该进程可抢占处理机,将手头未处理掉的进程放回到它以前的就绪队列中。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章