问答题 如果磁盘的每个磁道分成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