1.先進先出:先就緒的程序先執行,也就是批處理的系統的先來先服務演算法
2.時間片輪轉排程:將處理器的時間分成slice分配給每個程序,週期性切換。
注:slice太大將會退化成,先進先出演算法
silce太小,處理的時間全部浪費在排程上,資源浪費大
缺點:對i/o程序不太公平,總是用不完時間片,就放棄cpu去等待i/o裝置。
2.最高優先順序排程:總是執行優先順序高的程序。程序的優先順序是可以改變的。
缺點:會讓優先順序低的程序產生飢餓現象
3.最短程序優先:也就是短作業優先,總是先執行最短的程序。
缺點:會讓長程序產生飢餓現象
互動式系統中的排程
1.輪轉排程 每個程序被分配乙個時間段,稱為時間片 quantum 即允許該程序在該時間段中執行。如果在時間片結束時該程序還在執行,則將剝奪cpu並分配給另乙個程序。如果該程序在時間片結束前阻塞或結束,則cpu立即進行切換。時間片輪轉排程很容易實現,排程程式所要做的就是維護一張可執行程序列表,如圖2...
作業系統排程演算法
include include include include using namespace std const int maxnum 101 typedef struct information node struct node1 此結構體用於優先順序演算法的搶占式 int priority i...
作業系統排程演算法
在作業系統中存在多種排程演算法,其中有的排程演算法適用於作業排程,有的排程演算法適用於程序排程,有的排程演算法兩者都適用。下面介紹幾種常用的排程演算法。fcfs排程演算法是一種最簡單的排程演算法,該排程演算法既可以用於作業排程也可以用於程序排程。在作業排程中,演算法每次從後備作業佇列中選擇最先進入該...