如果知道传输速率,如何计算每条磁道的字节数?
答案1
每条磁道的字节数完全取决于制造商如何在磁盘内部布局,不是知道。所有现代磁盘都使用 LBA(逻辑块寻址),其中操作系统按扇区逐个寻址驱动器,不知道或不关心扇区在盘片上的物理位置(也不知道实际上有多少个盘片)。
不仅如此,每条磁道的扇区数还取决于您当时距离主轴电机的距离;它不像 CD 上的螺旋线。距离主轴越远,每条磁道的扇区数就越多(因此传输速率越高)。
下图解释了这一点,但请注意,该图有部分错误——不是从主轴向外扇区越来越大,而是扇区保持相同的大小,并且距离主轴越远,每个磁道上的扇区就越多(这导致每个磁道的字节数、每个磁道的扇区数等增加)。
由于磁头只会在某个磁道上旋转一圈,并且您不知道自己在磁盘上的位置,所以您无法知道下一个磁道会有更多还是更少的扇区,因此您的传输速率就会波动。
也就是说,只有当您直接从磁盘读取数据而不是从缓存中读取数据时,它才会波动;现代驱动器具有先进的缓存算法,可以预取它认为您接下来会请求的内容。因此,如果您测量传输速率,您不知道它是从磁盘中读取还是从缓存中读取,这使得这种测量无法重复且完全无用。
换句话说,你不需要。就是这样。