當前位置:首頁 » 操作系統 » 響應比高優先演算法

響應比高優先演算法

發布時間: 2022-12-14 14:04:50

1. 操作系統響應比高者優先調度演算法的思想

最高響應比優先法(HRN,Highest Response_ratio Next)是對FCFS方式和SJF方式的一種綜合平衡。FCFS方式只考慮每個作業的等待時間而未考慮執行時間的長短,而SJF方式只考慮執行時間而未考慮等待時間的長短。因此,這兩種調度演算法在某些極端情況下會帶來某些不便。HRN調度策略同時考慮每個作業的等待時間長短和估計需要的執行時間長短,從中選出響應比最高的作業投入執行。 響應比R定義如下: R =(W+T)/T = 1+W/T
其中T為該作業估計需要的執行時間,W為作業在後備狀態隊列中的等待時間。每當要進行作業調度時,系統計算每個作業的響應比,選擇其中R最大者投入執行。這樣,即使是長作業,隨著它等待時間的增加,W / T也就隨著增加,也就有機會獲得調度執行。這種演算法是介於FCFS和SJF之間的一種折中演算法。由於長作業也有機會投入運行,在同一時間內處理的作業數顯然要少於SJF法,從而採用HRN方式時其吞吐量將小於採用SJF 法時的吞吐量。另外,由於每次調度前要計算響應比,系統開銷也要相應增加

(1)等待時間相等時。則服務時間越短,優先順序越高,符合SJF思想。

(2)服務時間相等時,則等待時間越長,優先順序越高,符合FCFS思想。

(3)對於長作業,只要其等待時間足夠長,也能獲得處理機。

2. 最高響應比優先作業調度演算法

此演算法中,優先數=(等待的時間+要求服務的時間)/要求的服務時間,這是一個非搶占的進程,進程一旦得到處理器,他就一直運行下去到進程完成,中間不被強占。

3. 為什麼說響應比高者優先調度演算法是對先來先服務以及短作業優先這兩種調度演算法的折中

先來先服務的作業調度演算法,重點考慮的是作業在後備作業隊列里的等待時間,因此對短作業不利;短作業優先的作業調度演算法,重點考慮的是這樣所需要的CPU時間(當然,這個時間是用戶自己估計的),因此對長作業不利;「響應比高者優先」的作業調度演算法,試圖綜合這兩方面的因素,以便能更好的滿足各種用戶的需要。
所謂一個作業的響應比,是指該作業已經等待的時間與所需運行時間的比,即:
響應比=(已等待時間)/(所需CPU時間)
該比值的分母是不變的,但是隨著時間的推移,一個作業的「已等待時間」會不斷地發生變化。顯然,短作業比較容易獲得較高的響應比,這是因為它們的分母比較小,只需稍加等待,整個比值就會上升。另一方面,長作業的分母雖然很大,但隨著等待時間的增加,比值也會逐漸上升,從而獲得較高的響應比。根據這種分析,「可見響應比高者優先」的作業調度演算法,既照顧到了短作業的利益,也照顧到長作業的利益,是一種折中的作業調度演算法。

4. 高響應比優先調度演算法的原理

高響應比優先調度演算法既考慮作業的執行時間也考慮作業的等待時間,綜合了先來先服務和最短作業優先兩種演算法的特點。
該演算法中的響應比是指作業等待時間與運行比值,響應比公式定義如下:
響應比 =(等待時間+要求服務時間)/ 要求服務時間,即RR=(w+s)/s=1+w/s,因此響應比一定是大於1的。
如實例:
某系統有3個作業,系統確定它們在全部到達後,再開始採用響應比高者優先的調度演算法,則它們的調度順序是什麼?各自的周轉時間是什麼?
作業號 提交時間 運行時間
1 8.8 1.5
2 9.0 0.4
3 9.5 1.0
(1)如果都到達再算的話,等待時間=最後一個的提交時間-該作業到達的時刻
1: 9.5-8.8=0.7
2: 9.5-9=0.5
3: 0
所以響應比為(等待時間+要求服務時間)要求服務時間=等待時間/要求服務時間+1
1: 0.7/1.5+1=1.47
2: 0.5/0.4+1=2.25
3: 1
所以2先運行,2從9.5開始運行到9.9結束;
再以9.9時刻算響應比:
1: (9.9-8.8)/1.5+1=1.73
3: (9.9-9.5)/1+1=1.4
所以2執行完後1開始執行,從9.9執行到11.4結束
最後一個是3:從11.4開始執行到12.4結束
(2)如果不是都到達後才運行,那麼在8.8時只有作業1到達,所以先運行作業1
8.8+1.5(運行時間)=10.3
到10.3的時候作業1完成,此時作業2和3都已到達所以計算其響應比
(等待時間+要求服務時間)要求服務時間=等待時間/要求服務時間+1
作業2:(10.3-9.0)/0.4+1=4.325
作業3:(10.3-9.5)/1.0+1=1.8
所以先運行作業2
10.3+0.4=10.7
到10.7運行作業3
10.7+1.0=11.7
到11.7結束

5. 關於作業高響應比優先調度演算法的問題。

如果都到達再算的話,等待時間=最後一個的提交時間-該作業到達的時刻
1:
9.5-8.8=0.7
2:
9.5-9=0.5
3:
0
所以響應比為(等待時間+要求服務時間)\要求服務時間=等待時間/要求服務時間+1
1:
0.7/1.5+1=1.47
2:
0.5/0.4+1=2.25
3:1
所以2先運行,2從9.5開始運行到9.9結束;
再以9.9時刻算響應比:
1:(9.9-8.8)/1.5+1=1.73
3:(9.9-9.5)/1+1=1.4
所以2執行完後1開始執行,從9.9執行到11.4結束
最後一個是3:從11.4開始執行到12.4結束

6. 操作系統問題 關於響應比最高優先演算法 在線等~

因為是單處理器,所以不存在同時到達的情況,總是先到達的先執行。
比如1先到達,就是說得1到了匯流排控制權和處理器時間片,後續進入內存的作業自我阻塞或掛起。由於2345按照高響應比的演算法是被排在一個就緒隊列中,如果一個時間片內作業能結束且在沒有其他影響因素的情況下,其執行順序和先來先服務演算法是一樣的。1-2-3-4-5。就這樣。
實際操作系統調度的演算法是多種演算法的結合。比如FCFS+時間片輪轉+高優先順序優先+高響應比優先。這時作業調度是搶占式的。樓上的回答也正確。

7. 什麼是高響應比優先調度演算法,它採用何種調度方式

高響應比優先調度演算法就是把CPU分配給就緒隊列中響應比最高的進程。響應比=等待時間/要求服務時間+1。採用非搶占式調度方式。030

8. 高響應比優先進程調度演算法的特點是什麼

可以說是對先來先服務調度演算法(FCFS)和短作業優先調度演算法(SJF)的一種補充!FCFS只考慮等待時間(也就是誰等的時間長即誰來的最早優先順序)而忽視了作業的運行時間。而SJF則相反,只考慮作業的運行時間,而忽視等待時間,高響應比調度演算法公式(即對兩者之間的平衡)
優先權=(等待時間+要求服務時間)/有求服務時間
;既考慮了等待時間和作業運行時間,增強了處理機的性能。抽象出來就是對二者極端的平衡!我們計算專業今天剛學!!哈哈,希望幫助你!

熱點內容
shell腳本環境變數 發布:2025-05-15 04:45:18 瀏覽:692
安卓nba2k18什麼時候出 發布:2025-05-15 04:38:42 瀏覽:392
王者安卓轉蘋果為什麼顯示失敗 發布:2025-05-15 04:35:49 瀏覽:17
手機優酷緩存視頻格式 發布:2025-05-15 04:13:45 瀏覽:210
公益電影分鏡頭腳本插畫 發布:2025-05-15 04:08:37 瀏覽:961
數據壓縮編碼 發布:2025-05-15 03:58:44 瀏覽:726
java字元為空 發布:2025-05-15 03:57:11 瀏覽:547
速訊安卓哪裡下載 發布:2025-05-15 03:55:02 瀏覽:49
緩存區數據讀寫原理 發布:2025-05-15 03:39:57 瀏覽:586
編譯器生成的是二進制文件嗎 發布:2025-05-15 03:38:42 瀏覽:956