综合题

有一台磁盘机, 其平均寻道时间为 30ms, 平均等待时间为 10ms, 数据传输率为 500Byte/ ms, 磁盘机中随机存放着 1000 块, 每块为 3000Byte 的数据。 现欲把一块块数据取走, 更新后再放回原地。 假设一次取出或写入所需时间为: 平均寻道时间+平均等待时间+数据传输时间。 另外, 使用 CPU 更新信息所需时间为 4ms, 并且更新时间同输入输出操作不相重叠。 试问:

问答题

更新磁盘上的全部数据需多少时间?

【正确答案】

由于数据块是随机存放的, 所以每取出或写入一块均要定位。
Byte/ 500Byte/ ms=6ms。
更新全部数据所需时间=2×1000×(平均寻道时间+平均等待时间+数据传输时间) +1000×CPU=2×1000×(30+10+6) +1000×4=96000ms=96s。

【答案解析】
问答题

若磁盘机旋转速度和数据传输率都提高一倍, 更新全部数据需要多少时间?

【正确答案】

磁盘机旋转速度提高一倍后, 平均等待时间为 5ms。数据传输率提高一倍为 1000Byte/ ms, 数据传输时间变为 3000/ 1000Byte/ ms=3ms。 更新全部数据所需时间=2×1000×(30+5+3) +1000×4=80000ms=80s。

【答案解析】