【OS】磁碟排程演算法
阿新 • • 發佈:2018-12-23
一、磁碟概述
磁碟儲存器是計算機系統中最重要的儲存裝置,其中存放了大量的檔案。
二、改善磁碟儲存器的效能的三個主要方面
1、採用一個好的排程演算法,減少尋道時間
2、提高磁碟的I/O速度
3、採取冗餘技術
三、磁碟的訪問時間主要分為以下三個部分
1、尋道時間
Ts = m * n +s
2、旋轉延遲時間
3、傳輸時間
Tt = b/(rN)
四、磁碟排程演算法分為:
1、先來先服務演算法
按請求的先後順序,判斷訪問的先後順序。平均尋道距離大,現在用處比較少
2、最短定址優先
每次先滿足和當前移動臂距離最近的請求,但無法保證平均尋道距離最短。
3、掃描演算法 ------>>>>用C語言實現掃描演算法
又稱“電梯”排程演算法,可以防止“飢餓”
4、迴圈掃描演算法
掃描演算法的優化,磁頭的方向不會變化。當磁頭移動到最外道時,立即返回最裡面的欲訪問磁軌
5、NStepSCAN和FSCAN
(1)NStepSCAN用於防止“磁臂黏著”,也就是磁臂停住不動的情況。具體是將磁碟請求佇列分成若干個長度為N的子佇列
(2)FSCAN是對NStepSCAN的簡化,可以理解為這裡的N = 2;
五、下面通過一個例項來講解前三個磁碟排程演算法
假如若干個等待訪問磁碟者一次要訪問磁軌為 25,90,30 ,86,43 ,72,50,45,81,
且移動臂在48號柱面上假設訪問一個磁軌需要3ms,求出尋道時間