通過幾個例題理解進程周轉時間問題
注意:分為批處理任務同時到達還是分時間到達
1、有5個批處理任務A、 B、C、D、E幾乎同時到達一計算中心。它們預計運行的時間分別是10min, 6min ,2min, 4min和8min。其優先級(由外部設定)分別為3, 5, 2, 1和4,這里5為最高優先級。下列各種調度算法中,其平均進程周轉時間為14min的是()
A. 時間片輪轉調度算法
B. 優先級調度算法
C. 先來先服務調度算法
D. 最短作業優先調度算法
解答:
按照不同調度算法計算平均周期時間。時間片輪轉:因沒有給出時間片的長度暫不計算。優先級調度:100min / 5 = 20min。 先來先服務: 96min / 5 = 19.2min. 最短作業優先:70min / 5 = 14min。不同調度算法的調度過程如圖
圖片之所以這樣話可以考慮,以先來先服務為例
先執行A, B, C,D, E,
隨意在執行A的時候其他的都不執行,那么10min之后開始進行B
2、現有3個同時到達的作業J1, J2, J3,它們的執行時間分別是T1, T2和T3,且T1 < T2 < T3。若系統按單道方式運行且采用短作業優先調度算法,則平均周轉時間是(C)
A. T1 + T2 +T3
B. (T1 + T2 +T3) / 3
C. (3T1 + 2T2 +T3) / 3
D. (T1 + 2T2 +3T3) / 3
解答:
根據短作業優先調度算法,可以知道調度順序是J1, J2, J3因此J1先執行, J2, J3等待T1的時間;然后J2執行,J3繼續等待T2的時間;最后J3執行T3時間。因此J1的周轉時間為T1,J2的周轉時間為T1 + T2,J3的周轉時間為T1 + T2 + T3;平均周轉時間為三者只和的平均值,即(3T1 + 2T2 +T3) / 3
3、(2017年統考真題注意這個題作業到達系統時刻不同)假設4個作業到達系統的時刻和運行時間見表,系統在t = 2時開始作業調度。若分別采用先來先服務和短作業優先調度算法,則選中的作業分別是(D)
A. J2 , J3
B. J1, J4
C. J2, J4
D. J1, J3
作業 | 到達時刻t | 運行時間 |
---|---|---|
J1 | 0 | 3 |
J2 | 1 | 3 |
J3 | 1 | 2 |
J4 | 3 | 1 |
解答:此題解決思路不是一個一個的去算,而是概念問題
先來先服務調度算法是作業來的越早,優先級越高,因此會選擇J1, 短作業優先調度算法是作業運行時間越短,優先級越高,因此會選擇J3