处理这10个记录的最长时间与最短时间

参考:http://edu.21cn.com/ruankao/g_185_967613-1.htm

数据存储在磁盘上的排列方式会影响I/O服务的总时间。假设每磁道划分成10个物理块,每块存放1个逻辑记录。逻辑记录R1,R2,…,R10存放在同一个磁道上,记录的安排顺序如下表所示:

物理块

1

2

3

4

5

6

7

8

9

10

逻辑记录

R1

R2

R3

R4

R5

R6

R7

R8

R9

R10

假定磁盘的旋转速度为20ms/周,磁头当前处在R1的开始处。若系统顺序处理这些记录,使用单缓冲区,每个记录处理时间为4ms,则处理这10个记录的最长时间为(15);若对信息存储进行优化分布后,处理10个记录的最少时间为 (16)。
(15)A.180msB.200msC.204msD.220ms
(16)A.40msB.60msC.100msD.160ms
试题分析
系统读记录的时间为20/10=2ms。对第一种情况:系统读出并处理记录R1之后,因为处理记录的时间是4ms,在这4ms的时间内磁盘已经转到记录R4的开始处,所以为了读出记录R2,磁盘必须再转一圈,需要2ms(读记录)加20ms×(4ms的处理时间包含其中)(转一圈)的时间。

处理第一个记录时间 2ms

处理第二个记录时间 磁盘必须再转一圈从R2转到R2(4ms处理R1记录的时间包含这里面了,在这4ms中已从R1转到R4),需要2ms(读记录) 20ms+2ms 

处理第三个记录时间 20ms+2ms

处理第四个记录时间 20ms+2ms

处理第五个记录时间 20ms+2ms

处理第六个记录时间 20ms+2ms

处理第七个记录时间 20ms+2ms

处理第八个记录时间 20ms+2ms

处理第九个记录时间 20ms+2ms

处理第10个记录时间 20ms+2ms+4ms(处理时间),因为这4ms不能算在下一圈的20ms中了

这样处理10个记录时间为 2+8×22+20+2+4=204ms

也可以简单记为2+4+9×22=204ms

物理块

1

2

3

4

5

6

7

8

9

10

逻辑记录

R1

R8

R5

R2

R9

R6

R3

R10

R7

R4


从上表可以看出,当读出记录R1并处理结束后,磁头刚好转至R2记录的开始处,立即就可以读出并处理,因此处理10个记录的总时间为:
10×(2ms(读记录)+4ms(处理记录))=10×6ms=60ms
参考答案 (15)c(16)B

原文地址:https://www.cnblogs.com/keanuyaoo/p/3356242.html