作業系統 磁碟排程演算法

2021-09-25 08:16:55 字數 1209 閱讀 4337

假定當前磁頭出在第100到,等待服務的程序有8個,它們請求的磁碟先後順序是90、70、159、21、1、15、120、145。採用最短尋道時間優先/掃瞄演算法對其排程,填好以下表?

(從100號磁軌開始,向磁軌號增加方向訪問)

被訪問的下乙個磁軌號

移動距離(磁軌數)

總共所需尋道長度:

平均尋道長度:

答:最短尋道時間優先:

最短尋道時間優先演算法

(sstf

): 該演算法選擇這樣的程序,其要求訪問的磁軌與當前磁頭所在的磁軌距離最近,以使每次的尋道時間最短,該演算法可以得到比較好的吞吐...

從100開始,上面一堆數中,90離100最近,所以先寫90,然後剩下的數中,70離90最近,這次寫70,依次類推,得到下表:

(從100號磁軌開始)

被訪問的下乙個磁軌號

移動距離(磁軌數)

9010

7020

2149156

114120119

14525

15914

總共所需尋道長度:257

平均尋道長度:32.125

掃瞄演算法:

scan 演算法又稱電梯排程演算法。scan演算法是磁頭前進方向上的最短查詢時間優先演算法,它排除了磁頭在盤面區域性位置上的往復移動,scan演算法在很大程度上消除了sstf演算法的不公平性,但仍有利於對中間磁軌的請求。

「電梯排程」演算法是從移動臂當前位置開始沿著臂的移動方向去選擇離當前移動臂最近的那個柱訪問者,如果沿臂的移動方向無請求訪問時,就改變臂的移動方向再選擇。這好比乘電梯,如果電梯已向上運動到4層時,依次有3位乘客陳生、伍生、張生在等候乘電梯。他們的要求是:陳生在2層等待去10層;伍生在5層等待去底層;張生在8層等待15層。由於電梯目前運動方向是向上,所以電梯的形成是先把乘客張生從8層帶到15層,然後電梯換成下行方向,把乘客伍生從5層帶到底層,電梯最後再調換方向,把乘客陳生從2層送到10層。

從100號磁軌開始,向磁軌號增加方向訪問,下乙個就是120,接著是145,159,電梯上到頂層後,開始往下走,接著是90,70.....得到下表:

(從100號磁軌開始,向磁軌號增加方向訪問)

被訪問的下乙個磁軌號

移動距離(磁軌數)

12020

14525

15914

9069

7020

2149156

114總共所需尋道長度:217

平均尋道長度:27.125

作業系統磁碟排程演算法

裝置的動態分配演算法與程序排程相似,也是基於一定的分配策略的。常用的分配策略有先請求先分配 優先順序高者先分配等策略。在多道程式系統中,低效率通常是由於磁碟類旋轉裝置使用不當造成的。作業系統中,對磁碟的訪問要求來自多方面,常常需要排隊。這時,對眾多的訪問要求按一定的次序響應,會直接影響磁碟的工作效率...

作業系統磁碟排程演算法

建立乙個檔案,並把它命名為cidao.txt,在其中寫入18 5 23 8 16 5,並儲存 如下 注意,該檔案的路徑需要用雙反斜槓表示 include stdio.h include stdlib.h include iostream.h define maxsize 100 先來先服務排程演算法...

作業系統 磁碟排程演算法

一次磁碟讀寫操作所需要的時間先來先服務演算法 請求的磁軌集中的話,效能好.大量程序的時候會效能差 最短尋找時間優先 保證每次尋道時間最短,如果有反覆相同的磁軌,就會一直在小區域迴圈反覆,其他磁軌訪問不到,導致 飢餓 現象 掃瞄演算法 磁頭必須移動到最外側才能往內移動,類似電梯,對於在最外側的磁軌訪問...