问答题
如果磁盘的每个磁道分成9个块,现有一文件有A、B、…、I共9个记录,每个记录的大小与块的大小相等,若磁盘转速为6000RPM,每读出一块后需要2.5ms的处理时间。若忽略其他辅助时间,且一开始磁头在即将要读A记录的位置,试问:
问答题
如果将这些记录顺序存放在一磁道上,则顺序读出该文件需多少时间?
【正确答案】
【答案解析】每分钟6000转,则旋转1周所需的时间为10ms,旋转1个记录需10/9ms。
A
|
B
|
C
|
D
|
E
|
F
|
G
|
H
|
I
|
1
|
2
|
3
|
4
|
5
|
6
|
7
|
8
|
9
|
问答题
若要求顺序读出的时间最短,则应该如何安排文件的存放位置。
【正确答案】
【答案解析】在上一小题中,由于额外的旋转时间导致了读取记录的时间较长,为了减少额外的旋转时间,可以对记录块的存放顺序作修改,考虑到每读取一个记录后需2.5ms的数据处理时间,磁盘旋转3块所需的时间是3.33ms,因此可以每间隔3块存放相应的记录块,即1存放A、5存放B、9存放C、4存放D、8存放E、3存放F、7存放G、2存放H、6存放I,如下图所示。
A
|
H
|
F
|
D
|
B
|
I
|
G
|
E
|
C
|
1
|
2
|
3
|
4
|
5
|
6
|
7
|
8
|
9
|