硬盘是一种内存存储设备,如下所示:
磁盘分为磁道。每个磁道被进一步划分为扇区。这里要注意的一点是,外磁道的尺寸比内磁道大,但它们包含相同数量的扇区并且具有相同的存储容量。这是因为内部轨道的扇区中的存储密度高,而位稀疏地排列在外部轨道的扇区中。每个扇区的一些空间用于格式化。因此,一个扇区的实际容量小于给定容量。
读写(RW)磁头在旋转的硬盘上移动。正是这个读写头在磁盘上执行所有读写操作,因此,RW 头的位置是一个主要问题。要对内存位置执行读或写操作,我们需要将 RW 磁头放在该位置上。这里必须注意一些重要的术语:
- 寻道时间 – RW 磁头从其当前位置到达所需磁道所花费的时间。
- 旋转延迟 –扇区进入 RW 磁头所花费的时间。
- 数据传输时间 –传输所需数据量所需的时间。这取决于转速。
- 控制器时间 – 控制器所用的处理时间。
- 平均访问时间 –寻道时间 + 平均旋转延迟 + 数据传输时间 + 控制器时间。
注意:平均旋转延迟大多为 1/2*(旋转延迟)。
在问题中,如果没有提到寻道时间和控制器时间,则将它们视为零。
如果未给出要传输的数据量,则假定没有数据正在传输。否则,计算传输给定数据量所需的时间。
当未给出 RW 磁头的当前位置时,取旋转延迟的平均值。因为,RW 可能已经存在于所需位置,或者可能需要整个旋转才能在 RW 磁头下获得所需扇区。但是,如果给定了 RW 磁头的当前位置,则必须计算旋转延迟。
例子 –
考虑一个硬盘:
4面
64 条轨道/表面
128 个扇区/磁道
256 字节/扇区
- 硬盘的容量是多少?
磁盘容量 = 表面 * 磁道/表面 * 扇区/磁道 * 字节/扇区
磁盘容量 = 4 * 64 * 128 * 256
磁盘容量 = 8 MB - 磁盘以 3600 RPM 旋转,数据传输速率是多少?
60 秒 -> 3600 转
1 秒 -> 60 转
数据传输率 = 每秒转数 * 磁道容量 * 表面数(因为每个表面使用 1 个 RW 磁头)
数据传输率 = 60 * 128 * 256 * 4
数据传输率 = 7.5 MB/秒 - 磁盘以 3600 RPM 旋转,平均访问时间是多少?
由于没有给出寻道时间、控制器时间和要传输的数据量,我们将所有三项都视为 0。
因此,平均访问时间 = 平均旋转延迟
旋转延迟 => 60 秒 -> 3600 旋转
1 秒 -> 60 转
旋转延迟 = (1/60) 秒 = 16.67 毫秒。
平均旋转延迟 = (16.67)/2
= 8.33 毫秒。
平均访问时间 = 8.33 毫秒。 - 另一个例子:GATE IT 2007 |第 44 题