磁碟排程演算法
(1)先來先服務
(2)最短尋道時間優先
(3)電梯演算法
(4)單向掃瞄排程演算法
(1) 磁碟排程
當多個訪盤請求在等待時,採用一定的策略,對這些請求的服務順序調整安排,旨在降低平均磁碟服務時
間,達到公平、高效。
公平:乙個i/0請求在有限時間內滿足
高效:減少裝置機械運動所帶來的時間浪費
(2)磁碟排程考慮的問題:
一次訪盤時間 =尋道時間+旋轉延遲時間+訪問時間
-減少尋道時間
-減少延遲時間
(3)磁碟排程演算法
先來先服務:
:按訪問請求到達的先後次序服務
優點:簡單,公平;
缺點:效率不高,相臨兩次請求可能會造成最內到
最外的柱面尋道,使磁頭反覆移動,增加了服務時間,
對機械也不利。
假設磁碟訪問序列:
假設磁碟訪問序列: 98,183, 37, 122, 14,124, 65,67
讀寫頭起始位置: 53
訪問順序:
(53),98, 183, 37, 122,14, 124,65, 67
安排磁頭服務序列
計算磁頭移動總距離(道數)
最短尋道時間優先:
優先選擇距當前磁頭最近的訪
問請求進行服務,主要考慮尋道優先.
優點:改善了磁碟平均服務時間;
缺點:造成某些訪問請求長期等待得不到服務
假設磁碟訪問序列: 98, 183, 37, 122, 14, 124,65, 67
讀寫頭起始位置: 53
訪問順序: (53) ,65, 67,37, 14, 98, 122,124,183
電梯演算法:
克服了最短尋道優先的缺點,既考慮了距離,同時又考慮了方向。
具體做法:
-當裝置無訪問請求時,磁頭不動;當有訪問請求時,
磁頭按乙個方向移動,在移動過程中對遇到的訪問請求
進行服務,然後判斷該方向上是否還有訪問請求,如果
有則繼續掃瞄;否則改變移動方向,並為經過的訪問請
求服務,如此反覆
假設磁碟訪問序列: 98, 183, 37, 122,14,124,65, 67
讀寫頭起始位置: 53
訪問順序(向大號移動) :
(53) , 65, 67, 98, 122, 124,183,37, 14
總道數: 299
訪問順序(向小號移動) :
(53) ,37, 14, 65,67, 98,122, 124, 183
總道數:208
單向掃瞄排程演算法:
總是從0號磁軌開始向里掃瞄
按照各自所要訪問的磁軌位置的次序去選擇訪問者
移動臂到達最後個乙個磁軌後,立即帶動讀寫磁頭
快速返回到0號磁軌
返回時不為任何的等待訪問者服務
返回後可再次進行掃瞄
假設磁碟訪問序列: 98, 183, 37, 122, 14,124, 65, 67
讀寫頭起始位置: 53
訪問順序: (53) ,65, 67, 98,122, 124, 183,(0) ,14, 37
作業系統磁碟排程演算法
裝置的動態分配演算法與程序排程相似,也是基於一定的分配策略的。常用的分配策略有先請求先分配 優先順序高者先分配等策略。在多道程式系統中,低效率通常是由於磁碟類旋轉裝置使用不當造成的。作業系統中,對磁碟的訪問要求來自多方面,常常需要排隊。這時,對眾多的訪問要求按一定的次序響應,會直接影響磁碟的工作效率...
作業系統 磁碟排程演算法
假定當前磁頭出在第100到,等待服務的程序有8個,它們請求的磁碟先後順序是90 70 159 21 1 15 120 145。採用最短尋道時間優先 掃瞄演算法對其排程,填好以下表?從100號磁軌開始,向磁軌號增加方向訪問 被訪問的下乙個磁軌號 移動距離 磁軌數 總共所需尋道長度 平均尋道長度 答 最...
作業系統磁碟排程演算法
建立乙個檔案,並把它命名為cidao.txt,在其中寫入18 5 23 8 16 5,並儲存 如下 注意,該檔案的路徑需要用雙反斜槓表示 include stdio.h include stdlib.h include iostream.h define maxsize 100 先來先服務排程演算法...