操作系统磁盘的驱动调度

操作系统磁盘的驱动调度

ID:39700974

大小:295.32 KB

页数:15页

时间:2019-07-09

操作系统磁盘的驱动调度_第1页
操作系统磁盘的驱动调度_第2页
操作系统磁盘的驱动调度_第3页
操作系统磁盘的驱动调度_第4页
操作系统磁盘的驱动调度_第5页
资源描述:

《操作系统磁盘的驱动调度》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、6.2磁盘的驱动调度磁盘的驱动方式不同,从磁盘上获得信息的时间也不同,影响信息获得的时间还有数据在磁盘上的分布。6.2.1磁盘的结构“磁头号”。“柱面号”。“扇区号”。磁盘的结构如下图所示。执行一次输入输出所花的时间有:寻找时间、延迟时间、传送时间假定用T表示每个柱面上的磁道数,用S表示每个盘面上的扇区数,则第i柱面,j磁头,k扇区所对应的块号b可有如下公式确定:b=k+S*(j+i*T)在上述的假定下,每个柱面上有S*T个磁盘块,为了计算第P块在磁盘上的位置,可以令D=S*T,设M=[P/D],N=Pmod

2、D。于是,第P块在磁盘上的位置为:柱面号=M磁头号=[N/S]扇区号=NmodS6.2.2磁盘的驱动调度为了使寻找时间和延迟时间尽可能小,系统往往采用一定的调度策略来决定各等待访问者的执行次序,这项工作称磁盘的“驱动调度”,采用的调度算法称“驱动调度算法”。对磁盘来说,驱动调度有“移臂调度”和“旋转调度”两部分组成。一、移臂调度常用的移臂调度算法有:先来先服务算法最短寻找时间优先算法电梯调度算法单向扫描算法。在例子中假设柱面的编号从0到199。例如,如果现在读写磁头正在53号柱面上执行输入输出操作,而等待访问

3、者依次要访问的柱面为98,183,37,122,14,124,65,67。1.先来先服务调度算法当53号柱面上的操作结束后,访问柱面的次序为98,183,37,122,14,124,65,67。读写磁头总共移动了640个柱面的距离。2.最短寻找时间优先调度算法现在当53号柱面的操作结束后,访问次序为65、67、37、14,98,122,124,183。读写磁头总共移动了236个柱面的距离。3.电梯调度算法由于该算法是与移动臂的方向有关,所以,应分两种情况来讨论。(1)移动臂是向外移的。当前正在53号柱面执行操

4、作的读写磁头是移动臂由里向外(向0号柱面方向)带到53号柱面的位置,因此,当访问53号柱面的操作结束后,依次访问的次序为37、14,65,67,98,122,124,183。读写磁头共移动了208个柱面的距离。(2)移动臂是向里移的。当前正在53号柱面执行操作的读写磁头是移动臂由外向里(向柱面号增大方向)带到53号柱面的位置,因此,当访问53号柱面的操作结束后,依次访问的次序为65、67,98,122,124,183、37,14柱面的访问者服务。读写磁头共移动了299个柱面的距离。“电梯调度”与“最短寻找时间

5、优先”的比较:相同:都是尽量减少移动臂移动时所化的时间;不同:“最短寻找时间优先”不考虑臂的移动方向;“电梯调度”考虑臂的移动方向。优点:电梯调度算法是一种简单、实用且高效的调度算法。缺点:由于移动臂改变方向是机械动作,速度相对较慢。在实现时除了要记住读写磁头的当前位置外,还必须记住移动臂的移动方向。4.单向扫描调度算法执行次序为65,67,98,122,124,183、14,37。除了移动臂由里向外返回(从199返回到0)所用的时间外,读写磁头还需移动183个柱面的距离。调度算法比较:除了“先来先服务”调度

6、算法外,其余三种调度算法都是根据欲访问的柱面位置来进行调度的。在调度过程中可能有新的请求访问者加入,这些新的请求访问者加入时,如果读写磁头已经超过了它们所要访问的柱面位置,则只能在以后的调度中被选择执行。在多道程序设计系统中,在等待访问磁盘的若干请求访问者中,有些请求访问者可能要求访问的柱面号相同,但各自要求访问同一柱面上的不同磁道,或访问同一柱面同一磁道上不同扇区。所以,在进行移臂调度时,按照某种算法把移动臂定位到某个柱面后,应让等待访问这个柱面的各个访问者的输入输出操作都完成后再改变移动臂的位置。二、旋转

7、调度根据延迟时间来决定执行次序的调度称为“旋转调度”。应分析下列情况:(1)若干等待访问者请求访问同一磁道上的不同扇区。(2)若干等待访问者请求访问不同磁道上的不同扇区。(3)若干等待访问者请求访问不同磁道上相同扇区。例如,有4个访问5号柱面的请求访问者,它们的访问要求如下表所示。对它们进行旋转调度后,它们的执行次序可能是①,②,④,③,或①,③,④,②。请求次序柱面号磁头号扇区号①541②515③545④528三、信息的优化分布例如,某系统对磁盘初始化时把每条盘面分成8个扇区,今有8条逻辑记录被存放在同一条

8、磁道上供处理程序使用,处理程序要求顺序处理这8条记录,每次请求从磁盘上读一条记录,然后对读出的记录要花5毫秒的时间进行处理,以后再读下一条记录进行处理,直至8条记录都处理结束。假定磁盘转速为20毫秒/周,现把这8条逻辑记录依次存放在磁道上,如下图(a)所示。显然,读一条记录要花2.5毫秒的时间。当花了2.5毫秒的时间读出第1条记录并花5毫秒时间进行处理后,读写磁头已经在第4条记录的位置,为了顺序处理

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。