操作系统--分别用FCFS,SSTF,SCAN,CSCAN算法计算总寻道长度和平均寻道长度例题(详细)

博客围绕磁盘移臂调度算法展开,给出磁头当前在第100磁道,以及磁盘读写请求序列。详细解析了先来先服务、最短寻道时间优先、扫描、循环扫描四种算法,分别计算出各算法下的总寻道长度和平均寻道长度,并提及部分算法优缺点。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

题目:

若磁头的当前位置在第100磁道,现在有一磁盘读写请求序列如下:55,58,39,18,90,160,150,38,184。分别采用先来先服务算法(FCFS),最短寻道时间优先算法(SSTF),扫描算法(SCAN),循环扫描算法(CSCAN),分别求总寻道长度和平均寻道长度?

解析:

移臂调度算法在于有效利用磁盘,保证磁盘的快速访问。移臂调度主要有以下几种算法:

先来先服务算法(FCFS): 该算法只考虑访问请求的先后顺序。如上题当前位置为100,则顺序为(100),55,58,39,18,90,160,150,38,184。如下表所示:

被访问的下一个磁道号移动距离(磁道数)
5545
583
3919
1821
9072
16070
15010
38112
184146

因此磁头总寻道长度: (100-55)+(58-55)+(58-39)+(39-18)+(90-18)+(160-90)+(160-150)+(150-38)+(184-38)= 498平均移动磁道数: 498/9 =55.3

最短寻道时间优先算法(SSTF): 从等待的访问者中挑选寻找时间最短的那个请求执行。如上题当前位置为100,则顺序为(100),90, 58,55,39,38,18,150,160,184。如下表所示:

被访问的下一个磁道号移动距离(磁道数)
9010
5832
553
3916
381
1820
150132
16010
18424

因此磁头总寻道长度: (100-18)+(184-18)=248平均移动磁道数: 248/9= 27.5
缺点:产生饥饿现象

扫描算法(SCAN): 自里向外访问,直到再无更外的磁道需要访问时,才将磁臂换向为自外向里移动。如上题当前位置为100,则顺序为(100),150,160,184,90,58,55,39,38,18。如下表所示:

被访问的下一个磁道号移动距离(磁道数)
15050
16010
18424
9094
5832
553
3916
381
1820

因此磁头总寻道长度: (184-100)+(184-18)=250平均移动磁道数: 250/9= 27.8
优点:不会产生饥饿现象

循环扫描算法(CSCAN): 单向扫描,自里向外扫描,当磁头移动到最外面的磁道并访问后,磁头立即返回到最里面的预访问磁道,即将最小磁道号紧接着最大磁道号构成循环。如上题当前位置为100,则顺序为(100),150,160,184,18,38,39,55,58,90。如下表所示:

被访问的下一个磁道号移动距离(磁道数)
15050
16010
18424
18166
3820
391
5516
583
9032

因此磁头总寻道长度: (184-100)+(184-18)+(90-18)=322平均移动磁道数: 322/9= 35.8
优点:具有较好的寻道性能;且不会产生饥饿现象|

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值