操作系统:磁盘的移臂调度算法
发布日期:2021-05-08 03:04:38 浏览次数:27 分类:精选文章

本文共 1028 字,大约阅读时间需要 3 分钟。

一、先来先服务调度算法FCFS:

——算法:根据访问请求的先后次序选择先提出访问请求的为之服务。

——优缺点:是磁盘调度的最简单的一种形式,它既容易实现,又公平合理,缺点是效率不高


二、最短查找时间优先算法SSTF:

——算法:以磁头移动距离的大小作为优先的因素,从当前磁头位置出发,选择离磁头最近的磁道为其服务。

——优缺点:减少了磁道平均查找时间,但没考虑磁头移动的方向,也没有考虑进程在队列中等待的时间。


三、扫描算法:

①电梯调度算法SCAN:

——算法:是选请求队列中沿磁头臂前进方向最接近于磁头所在柱面的访问请求作为下一个服务对象。

——优缺点:算法简单、实用且高效,克服了最短寻道优先的缺点,既考虑了距离,同时又考虑了方向,但有时有的请求等待时间可能很长。

例如,如果在为访问43号柱面的请求者服务后,当前正在为访问67号柱面的请求者服务,同时有若干请求者在等待服务,它们依次要访问的柱面号为186,47,9,77,194,150,10,135,110。

  • 按照先来先服务的策略,处理顺序:186→47→9→77→194→150→10→135→110。
  • 用最短查找时间优先算法服务的顺序为:     77→47→10→9→110→135→150→186→194。
  • 用电梯调度算法,服务次序为:     77→110→135→150→186→194→47→10→9。

 

②N步扫描策略:

——N步SCAN算法是将磁盘请求队列分成若干个长度为N的子队列,磁盘调度将按FCFS算法依次处理这些子队列。而每处理一个队列时又是按SCAN算法,对一个队列处理完后,再处理其他队列。

——当正在处理某子队列时,如果又出现新的磁盘I/O请求,便将新请求进程放入其他队列,这样就可避免出现粘着现象。

 

③循环扫描策略:

——磁盘单向移动。当移动臂向内移动时,它对本次移动开始前到达的各访问要求自外向内地依次给予服务,直到对最内柱面上的访向要求满足后,然后移动臂直接向外移动,停在所有新的访问要求的最外边的柱面上。然后再对本次移动前到达的各访问要求依次给予服务。

④FSCAN算法:

——FSCAN算法实质是N步SCAN算法的简化。

——将磁盘请求访问队列分成两个子队列,一是当前所有请求磁盘(I/O)的进程形成的队列,由磁盘调度按SCAN算法进行处理。另—个队列则是在扫描期间,新出现的所有请求磁盘I/O进程的队列,把它们排入另一个等待处理的请求队列。

 

Ending... ...

上一篇:操作系统学习笔记:设备管理
下一篇:操作系统:文件共享的实现方法

发表评论

最新留言

逛到本站,mark一下
[***.202.152.39]2025年04月10日 10时12分45秒