问题 单项选择题

假设磁盘上每个磁道划分成9个物理块,每块存放1个逻辑记录。逻辑记录R0,R1,…,R8存放在同一个磁道上,记录的安排顺序如表2-9所示。
表2-9 记录的安排顺序

物理块 0 1 2 3 4 5 6 7 8
逻辑记录 R0 R1 R2 R3 R4 R5 R6 R7 R8
假定磁盘旋转一圈的时间为27ms,磁头当前处在R0的开始处。若系统顺序处理这些记录,使用单缓冲区,每个记录处理时间为3ms,则处理这9个记录的最长时间为 (9) ;若对信息存储进行优化分布后,处理9个记录的最少时间为 (10)

A.30ms

B.36ms

C.54ms

D.60ms

答案

参考答案:C

解析:

[分析]: 因为系统使用的是单缓冲区,且顺序处理9个记录,每个记录处理时间为3ms,加上读/写时间,总的时间就超过3ms。而磁盘旋转一圈的时间为27ms,也就是说,在系统读取第0个记录后,正在处理的过程中,磁盘已经旋过了第1个记录。那么,要读取第1个记录,就需要磁盘再次旋转到第1个记录(即磁盘旋转1圈后,27ms+3ms=30ms)。同理,要读取第2个记录,也需要等30ms。这样,要读取后面8个记录,需要8×30ms=240ms,同时加上处理第0个记录的时间(3ms)和处理第8个记录的时间(3ms),共需246ms。
要想节约时间,可以把记录错开存放,如表2-10所示。

表2-10 错开存放的记录
物理块 0 1 2 3 4 5 6 7 8
逻辑记录 R0 R5 R1 R6 R2 R7 R3 R8 R4
这样,就可以在磁盘旋转2圈内完成所有记录的处理,时间为54ms。要注意的是,最后处理的记录R8不是最后一个磁盘块,所以不需要旋转到最后1个物理块。也就是说,第2圈的旋转只需要24ms就到达R8了。但是,因为要加上R8的处理时间3ms,所以,总时间仍然为54ms。

填空题
多项选择题