2.9調度算法FCFS,SJF,HRRN

作業、進程和程序之間的聯繫:

一個作業通常包括程序、數據和操作說明書3部分。每一個進程由PCB、程序和數據集合組成。這說明程序是進程的一部分,是進程的實體。因此,一個作業可劃分爲若干個進程來完成,而每一個進程有其實體————程序和數據集合。

 

一,先來先服務(FCFS)

1,算法思想:主要從公平的角度(類似排隊買奶茶)

2,算法規則:按照作業/進程的到達先後順序進行服務

3,這種調度是用於作業調度/進程調度的區別

用於作業調度:考慮哪個作業先到達後備隊列

用於進程調度:考慮哪個進程先到達就緒隊列

4,是搶佔式還是非搶佔式?:非搶佔式

5,優點和缺點

優點:公平,算法實現簡單

缺點:排在長作業(進程)後面的段作業需要等待很長時間,帶權週轉時間很大,對段作業用戶體驗不好。既FCTS算法對長作業有利,對短作業不利

6,是否會導致飢餓:不會

 

二,最短作業優先(SJF)

1,算法思想:最求最少的平均等待時間,最少的平均週轉時間,最少平均帶權週轉時間

2,算法規則:服務時間最短的作業/進程先得到服務

3,這種調度是用於作業調度,還是進程調度?

作業和進程都適用

4,是搶佔式還是非搶佔式?

考試考非搶佔式的

5,優點和缺點

優點:最短的平均等待時間,平均週轉時間

缺點:不公平,對短作業有利,對長作業不利,可能產生飢餓現象

6,是否會導致飢餓:

會產生,如果短進程一直搶佔CPU,長進程就一直得不到服務

 

三,最高響應比優先

1,算法思想:綜合考慮作業/進程的等待時間和要求服務的時間

2,算法規則:在每次調度時先計算各個作業/進程的響應比,選擇響應比高的作業爲其服務

公式:響應比=(服務時間+等待時間)/服務時間

3,這種調度是用於作業調度,還是進程調度:都可以

4,是搶佔式還是非搶佔式:非搶佔式

5,優點和缺點

綜合考慮了等待時間和運行時間,等待時間相同時,要求服務時間短的優先,要求服務時間相同時,等待時間長的優先。對於長作業來說,隨着等待時間越久,其響應比會越大,從而避免長作業飢餓的問題

6,是否會導致飢餓:不會

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章