若干个等待访问磁盘者依次要访问的柱面为20,44,40,4,80,12,76,假设每移动一个柱面需要3毫秒时间,移动臂当前位于40号柱面,请按下列算法分别计算为完成上述各次访问总共花费的寻找时间。
时间: 2023-05-02 22:04:10 浏览: 644
题目中给出了一个数列,分别是20、44、40、4、80、12、76。现在要求移动一个柱面需要3毫秒的时间,移动当前位置到40号柱面需要计算移动4 - 40 = -36个柱面,为了方便,我们可以将顺时针转动的柱面与逆时针转动的柱面分别算出时间,然后取最小值。顺时针移动需要移动 76 + (80 - 40) = 116 个柱面,逆时针移动需要移动 76 + (40 - 4) + 76 = 188 个柱面,所以需要移动36个柱面的总时间为116 * 3 = 348毫秒。计算完所有需要移动的柱面,将所需时间加起来就是总共需要的时间。
相关问题
若干个等待访问磁盘者依次要访问的柱面为8,20,28,34,40,52,6。假设每移动一个柱面需要5毫秒时间,移动臂当前位于10号柱面,请按下列算法分别给出磁盘访问序列,并分别计算所花费的总寻道时间。 (1)先来先服务算法。 (2)电梯(SCAN)算法。
好的,我会记录下您的要求,并为您回答问题。
对于您的问题,根据先来先服务算法,磁盘访问序列为:8,20,28,34,40,52,6。当前移动臂位于10号柱面,因此第一个要访问的是8号柱面,需要移动2个柱面,所花费的寻道时间为10毫秒,接下来依次访问其他柱面,每次移动的柱面数为访问柱面号减去上一个访问柱面号的绝对值,总寻道时间为89毫秒。
对于电梯(SCAN)算法,我们需要先将磁盘访问序列按照柱面号升序排列,得到序列为:6,8,20,28,34,40,52。当前移动臂位于10号柱面,因此我们需要向外扫描直到最大柱面号52,然后掉头向里扫描直到最小柱面号6,依次访问扫描到的柱面,总寻道时间为153毫秒。
希望能够解决您的问题,有任何其他问题欢迎随时提出。
假定磁盘的移动臂现处于8号柱面,有如下6个请求者等待访问磁盘,它们的访问位置如下表所示,试求出最省时间的响应顺序。
### 回答1:
这个问题所描述的假定磁盘的移动只发生在8号柱面上,有6个请求者等待访问磁盘,他们的访问位置如下表所示,试求出最省时的响应顺序。
该问题可以使用磁盘调度算法来解决。一般来说,磁盘调度算法是针对磁盘访问请求的顺序进行安排的,以最小化磁盘头的移动,从而提高磁盘的访问效率。常见的磁盘调度算法有如下几种:FCFS(先来先服务)、SSTF(最短寻道时间)、SCAN(扫描)、C-SCAN(循环扫描)等。
根据问题描述,假设磁盘当前的位置在8号柱面上,有6个请求者等待访问磁盘,他们的访问位置如下表所示:
请求者 请求位置
P1 55
P2 58
P3 39
P4 18
P5 90
P6 160
我们可以使用SSTF(最短寻道时间)算法来解决该问题。具体来说,SSTF算法是选择离当前磁道最近的一个请求进行访问的。因此,我们可以先将请求者按照与当前磁道的距离从小到大排列,然后按照这个顺序访问磁盘即可。
对于上述请求者的情况,按照与8号柱面的距离从小到大的顺序排序为:P3(21)、P4(10)、P2(50)、P1(47)、P5(82)、P6(152)。因此,最省时的响应顺序为P4(18)、P3(39)、P1(55)、P2(58)、P5(90)、P6(160)。
### 回答2:
磁盘的访问请求顺序对磁盘操作的效率有着很大的影响。同一时间,访问磁盘的请求可能会有多个,因此选择最省时间的响应顺序非常重要。
假定磁盘的移动臂现处于8号柱面,有以下6个请求者等待访问磁盘,他们的访问位置如下表所示:
| 请求者 | 所在柱面 |
| ------ | -------- |
| A | 4 |
| B | 18 |
| C | 0 |
| D | 16 |
| E | 10 |
| F | 2 |
要求最省时间的响应顺序,就需要确定响应的先后顺序。常见的磁盘调度算法有先来先服务(FCFS)、最短寻找时间优先(SSTF)、扫描算法(SCAN)等。这里我们采用SSTF算法,即选择当前移动臂所在柱面距离最近的请求者先响应,在SSTF算法下,最省时间的响应顺序为A、C、F、E、D、B。
具体来说,先将8和请求者的柱面之间的距离计算出来,然后挑选距离最短的请求者响应。8和4的距离最小,因此先响应A。然后再计算下一个请求者到当前移动臂的距离,距离最小的是C,因此选择C响应。以此类推,得到最省时间的响应顺序。
在实际操作中,不同的磁盘调度算法和调度策略都有其适用范围和优缺点,需要根据具体情况选择最合适的方式来进行磁盘访问调度,以提高系统吞吐量和性能。
### 回答3:
假设磁盘的移动臂现处于8号柱面,有如下6个请求者等待访问磁盘,它们的访问位置如下表所示:
| 请求者 | 访问位置 |
|--------|---------|
| 1 | 33 |
| 2 | 20 |
| 3 | 66 |
| 4 | 18 |
| 5 | 40 |
| 6 | 87 |
要求出最省时间的响应顺序,需要使用磁盘调度算法来解决。磁盘调度算法是操作系统中用于调度磁盘访问的一种算法,根据访问位置的不同,可以分为以下几种算法:
1. 先来先服务(FCFS):按请求的先后顺序进行服务,不考虑磁盘头的移动时间和寻道的距离。
2. 最短寻道时间优先(SSTF):每次选择距离移动臂最近的磁道进行服务。
3. 扫描算法(SCAN):移动臂沿着一根方向进行移动,直到达到磁盘一端,然后掉头向另一个方向移动,不断往返移动臂。
4. 循环扫描算法(C-SCAN):类似于SCAN算法,只是在到达一端后不掉头回来,而是直接重新返回另一端。
针对这道题目的数据,我们可以采用SSTF算法求解,具体如下:
1. 先将请求者按照距离移动臂的距离从小到大排序,得到以下序列:
| 请求者 | 访问位置 | 移动距离 |
|--------|---------|---------|
| 4 | 18 | 10 |
| 2 | 20 | 12 |
| 5 | 40 | 32 |
| 1 | 33 | 25 |
| 3 | 66 | 58 |
| 6 | 87 | 79 |
2. 从移动臂当前位置开始,每次选择距离移动臂最近的磁道进行服务,这里的移动距离即为最短寻道时间。按照这个顺序依次服务请求,在磁道上的移动距离为:
10 + 12 + 10 + 25 + 33 + 21 = 111
所以,最省时间的响应顺序是:4、2、5、1、3、6。
阅读全文