假设一个磁盘驱动器有 5000个柱面,从0~2999.驱动器正在为柱面143的一个请求提供服务,且前面一个服务请求在柱面125。/即将到来的服务顺序是86、72、913、1774、 948、 1509、1022、1750、130。从现在的磁头位置才始,按照下面的磁盘调度算法,磁头总的移动距离分别是多少 A) FCFS B)SSTF C) SCAN D) LOOK E) C-SCAN F) C-LOOK
时间: 2024-03-19 08:40:19 浏览: 131
磁盘调度算法(FCFS,SSTF,SCAN)
5星 · 资源好评率100%
好的,我会回答你的问题。针对你的问题,我将依次介绍每种磁盘调度算法的磁头总移动距离。
A) FCFS(先来先服务):按照服务请求的顺序进行服务,不考虑磁头移动距离。因此,对于这个请求序列,磁头总移动距离是:
143 - 125 + abs(125 - 86) + abs(86 - 72) + abs(72 - 913) + abs(913 - 1774) + abs(1774 - 948) + abs(948 - 1509) + abs(1509 - 1022) + abs(1022 - 1750) + abs(1750 - 130) = 10211
B) SSTF(最短寻道时间优先):选择离当前磁头位置最近的请求进行服务。对于这个请求序列,磁头总移动距离是:
143 - 125 + abs(125 - 130) + abs(130 - 86) + abs(86 - 72) + abs(72 - 1774) + abs(1774 - 1750) + abs(1750 - 1509) + abs(1509 - 948) + abs(948 - 913) + abs(913 - 1022) = 5270
C) SCAN(扫描算法):按照磁头移动方向的一个方向进行服务,直到该方向上没有请求,然后改变方向。对于这个请求序列,假设磁头初始方向是向外的,磁头总移动距离是:
(2999 - 143) + (2999 - 86) + (913 - 0) + (1774 - 72) + (2999 - 1509) + (2999 - 1022) + (1750 - 0) + (130 - 0) = 28022
D) LOOK(扫描算法的改进版):类似于SCAN算法,但只到最后一个请求,然后改变方向。对于这个请求序列,假设磁头初始方向是向外的,磁头总移动距离是:
(1774 - 143) + abs(1774 - 913) + abs(913 - 72) + abs(72 - 86) + abs(86 - 130) + abs(130 - 948) + abs(948 - 1022) + abs(1022 - 1509) + abs(1509 - 1750) = 4548
E) C-SCAN(循环扫描算法):类似于SCAN算法,但磁头在一个方向上服务完最后一个请求后,立即回到最开始的请求位置,重新服务。对于这个请求序列,假设磁头初始方向是向外的,磁头总移动距离是:
(2999 - 143) + (2999 - 86) + (2999 - 1774) + (2999 - 1750) + (2999 - 1509) + (2999 - 1022) + (2999 - 913) + (2999 - 948) + 1750 + 1509 + 1022 + 948 + 913 + 86 + 72 + 130 = 39716
F) C-LOOK(循环扫描算法的改进版):类似于C-SCAN算法,但只到最后一个请求,然后改变方向。对于这个请求序列,假设磁头初始方向是向外的,磁头总移动距离是:
(1774 - 143) + abs(1774 - 913) + abs(913 - 72) + abs(72 - 86) + abs(86 - 130) + abs(130 - 948) + abs(948 - 1022) + abs(1022 - 1509) + abs(1509 - 1750) + 1750 + 1509 + 1022 + 948 + 86 + 72 + 130 - 143 = 9516
以上就是针对这个请求序列,各种磁盘调度算法的磁头总移动距离。
阅读全文