搶佔式和非搶佔式排程


搶佔式排程是一種CPU排程技術,它透過將CPU的時間片分配給給定的程序來工作。分配的時間片可能能夠完成整個程序,也可能無法完成。當程序的爆發時間大於CPU週期時,它會被放回就緒佇列,並在下次機會執行。當程序切換到就緒狀態時,將使用這種排程。

由搶佔式排程支援的演算法包括輪詢(RR)、優先順序、SRTF(最短剩餘時間優先)。

非搶佔式排程是一種CPU排程技術,程序獲取資源(CPU時間)並保持它直到程序終止或被推入等待狀態。在程序完成之前,不會中斷任何程序,之後處理器切換到另一個程序。

基於非搶佔式排程的演算法包括非搶佔式優先順序和最短作業優先。

搶佔式排程與非搶佔式排程

搶佔式排程非搶佔式排程
資源根據週期分配,時間有限。資源被程序使用並持有,直到它終止。
程序可以在完成之前被中斷。程序不會被中斷,直到其生命週期完成。
由於在佇列中插入優先順序程序,可能會導致飢餓。當具有較長爆發時間的程序佔用系統時,可能會發生飢餓。
維護佇列和剩餘時間需要儲存開銷。不需要此類開銷。

更新於:2020年2月4日

13K+ 瀏覽量

開啟你的職業生涯

完成課程獲得認證

開始學習
廣告