问题 单项选择题

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

表8-9 逻辑记录在磁盘中的安排顺序表

物理块12345678910
逻辑记录R1R2R3R4R5R6R7R8R9R10
假定磁盘的旋转速度为20ms/周,磁头当前处在R1的开始处。若系统顺序处理这些记录,使用单缓冲区,每个记录处理时间为4ms,则处理这10个记录的最长时间为 (35) ;若对信息存储进行优化分布后,处理10个记录的最少时间为 (36)

A.40ms

B.60ms

C.100ms

D.160ms

答案

参考答案:B

解析:[要点解析] 依题意“每磁道划分成10个物理块,每块存放1个逻辑记录”和“磁盘的旋转速度为20ms/周”得,系统读取每一个逻辑记录的时间t1=20ms/10=2ms。
如果逻辑记录R1~R10按表8-7顺序存放在同一个磁道时,依题意“系统使用单缓冲区,每个记录处理时间为4ms”,那么当系统读出并处理完逻辑记录R1,所花费的时间是t2=2ms+4ms=6ms。
由于处理完逻辑记录R1之后,此时磁头已转到记录R4的开始处,因此为了读出逻辑记录R2,磁盘必须继续转至逻辑记录R2的开始处,这一过程磁头将经过8个逻辑记录,所花费的时间为t3=16ms。
由此可见,系统从处理完逻辑记录R1到处理完逻辑记录R2所花费的时间是t4=16ms+2ms+4ms=22ms。
对于逻辑记录R3~R10处理时间的分析过程类似逻辑记录R2的分析过程,因此,处理按表8-7顺序存放的R1~R10这10个记录的总时间t5=t2+t4×9=6ms+22ms×9=204ms。
若要求对信息存储进行优化分布使处理10个逻辑记录的时间最少,那么就必须满足当读出前一个逻辑记录(例如R1)并处理结束后,磁头刚好转至下一个记录(例如R2)的开始处。
由读取一个逻辑记录的时间为2ms,处理一个逻辑记录的时间为4ms可推理出,如逻辑记录R1~R10按表8-10进行分布优化时,处理10个记录的时间最少。

表8-9 逻辑记录在磁盘中的安排顺序表

物理块