磁盘调度算法笔记--(FCFS、SSTF、SCAN、CSCAN)
為了減少對(duì)文件的訪問時(shí)間,應(yīng)采用一種最佳的磁盤調(diào)度算法。使各種進(jìn)程對(duì)磁盤平均訪問時(shí)間最小。由于在訪問磁盤的事件中主要是尋道時(shí)間,因此,磁盤調(diào)度算法的目標(biāo)是是磁盤的平均尋道時(shí)間最小。目前磁盤調(diào)度算法有以下幾類:
1.先來先服務(wù)(FCFS):根據(jù)進(jìn)程請(qǐng)求訪問磁盤的先后次序進(jìn)行調(diào)度。
假設(shè)磁頭的初始位置是100號(hào)磁道,有多個(gè)進(jìn)程先后陸續(xù)的請(qǐng)求訪問55,58,39,18,90,160,150,38,184號(hào)磁道
按照FCFS的規(guī)則,按照請(qǐng)求到達(dá)的順序,磁頭需要一次移動(dòng)到55,58,39,90,160,150,38,184號(hào)磁道
磁頭總共移動(dòng)的磁道個(gè)數(shù)為45+3+19+21+72+70+10+112+146=498
平均尋道長度為498/9=55.3個(gè)磁道
優(yōu)點(diǎn):公平,性能還可以
缺點(diǎn):如果有大量進(jìn)程競(jìng)爭(zhēng)使用磁盤,請(qǐng)求訪問磁道很分散,則FCFS在性能上很差,尋道時(shí)間長。
最短尋道時(shí)間優(yōu)先(SSTF):其要求訪問的磁道與當(dāng)前磁頭所在的磁道距離最近,以使每次的尋道時(shí)間最短,但這種調(diào)度算法卻不能保證平均尋道時(shí)間最短。
假設(shè)磁頭的初始位置是100號(hào)磁道,有多個(gè)進(jìn)程先后陸續(xù)的請(qǐng)求訪問55,58,39,18,90,160,150,38,184號(hào)磁道
按照SSTF的規(guī)則,請(qǐng)求到達(dá)的
磁頭總共移動(dòng)了(100-18)+(184-18)=248個(gè)磁道
平均尋道長度為248/9=27.5個(gè)磁道
優(yōu)點(diǎn):性能較好,平均尋道時(shí)間短
缺點(diǎn):可能產(chǎn)生“饑餓”現(xiàn)象
掃描算法(SCAN):當(dāng)磁頭正在由里向外移動(dòng)時(shí),SCAN算法所選擇的下一個(gè)訪問對(duì)象應(yīng)是其欲訪問的磁道,既在當(dāng)前磁道之外,又是距離最近的。這樣由里向外地訪問,直至再無更外的磁道需要訪問時(shí),才將磁臂換向,由外向里移動(dòng)。也叫電梯算法。
磁頭總共移動(dòng)了(184-100)+(184-18)=250個(gè)磁道
平均尋道長度為250/9=27.8個(gè)磁道
優(yōu)點(diǎn):性能較好,平均尋道時(shí)間短,不會(huì)產(chǎn)生饑餓現(xiàn)象
缺點(diǎn):1,只有到最邊上的磁道才能改變磁頭的移動(dòng)方向。2.SCAN對(duì)于各個(gè)位置磁道響應(yīng)頻率不平均。
循環(huán)掃描算法(CSCAN):為了減少SCAN算法造成的某些進(jìn)程的請(qǐng)求被嚴(yán)重推遲,CSCAN算法規(guī)定磁頭單向移動(dòng)。
磁頭總共移動(dòng)了(184-100)+(184-18)+(90-18)=322個(gè)磁道
平均尋道長度為322/9=35.8個(gè)磁道
優(yōu)點(diǎn):比起SCAN算法,對(duì)于各位置磁道的響應(yīng)頻率很平均。
缺點(diǎn):只有到邊上才能改變磁頭移動(dòng)方向,比起SCAN算法來,平均尋道時(shí)間更長。
總結(jié)
以上是生活随笔為你收集整理的磁盘调度算法笔记--(FCFS、SSTF、SCAN、CSCAN)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 坚持免费不限速:阿里云盘iOS版3.7.
- 下一篇: 全球唯一新冠预防药首次进入国内:一次13