基于扫描的磁盘调度算法

扫描(SCAN)算法——电梯调度算法

当磁头正在由里向外移动时,SCAN算法所考虑的下一个访问对象应该是其欲访问的磁道既在当前磁道之外,又是距离最近的。直到再无更外的磁道需要访问时,才将磁臂更换为自外向里运动。

循环扫描算法(CSCAN)

扫描算法存在这样的问题:当磁头刚从里向外移动而越过了某条磁道时,恰好又有一进程请求访问此磁道,这时,该进程必须等待,等待磁头从里向外,然后再从外向里扫描完处于外面的所有要访问的磁道后,才处理该进程的请求,致使该进程的请求被推迟。
为了减少这种延迟,CSCAN算法规定磁头单向移动,例如,只是自里向外地移动,当磁头移动到最外层的磁道并访问后,磁头立即返回到最里的欲访问的磁道,即将最小磁道号紧接着最大磁道号构成循环,进行循环扫描。

NStepSCAN算法

在最短寻道时间优先(SSTF),扫描算法(SCAN),循环扫描算法(CSCAN)中,都可能出现磁臂停留在某处不动的情况,例如,有一个或几个进程对某一磁道有较高的访问频率,这些进程反复请求对某一磁道的I/O操作,从而垄断了整个磁盘设备——这一现象,称为磁臂粘着,在高密度磁盘上,容易出现这种情况。
N步SCAN算法是将磁盘请求队列分为若干个长度为N的子队列,磁盘调度将按FSFC算法依次处理这些队列,而每处理一个队列又按照SCAN算法,对一个队列处理完,再处理其他队列。
当正在处理某子队列时,如果又出现新的磁盘I/O请求,便将新请求进程放入其它队列,这样就可避免出现磁臂黏着现象。当N值取很大时,会使N步扫描算法蜕化为SCAN算法,当N=1时,会使N步扫描算法退化成FCFS算法

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

饼干饼干圆又圆

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值