(有人问过类似的问题,但是没有人回答是物理还是逻辑扇区大小决定了 LBA 大小的设置。)
硬盘有“物理扇区大小”和“逻辑扇区大小”。
我们现在有以下磁盘:
旧磁盘
- 逻辑扇区大小:512字节
- 物理扇区大小:512字节
512e 高级格式磁盘
- 逻辑扇区大小:512字节
- 物理扇区大小:4096字节
4Kn 高级格式磁盘
- 逻辑扇区大小:4096 字节
- 物理扇区大小:4096字节
问题:
LBA(逻辑块地址)大小是由“逻辑扇区大小”还是“物理扇区大小”决定的?
答案1
合乎逻辑。
注意 LBA 代表逻辑块寻址。在这种情况下,这很好地对应了,但除非您了解技术细节,否则您无法确定使用同一个词是否不会产生误导。
如果物理和逻辑扇区大小相等,则没有问题。您使用设备的“扇区大小”来操作。术语“逻辑扇区大小”和“物理扇区大小”可能不存在,“扇区大小”就足够了。
如果操作系统和程序始终查询设备以了解其扇区大小,并且它们准备好接受 512 字节以外的值,那么即使扇区大小为 4096 字节(或任何其他),也仍然足够。
但是,由于 ATA HDD 的 512 字节扇区大小是标准的、常见的、“一成不变的”和“始终如此”的,因此可以相对安全地假设它就是这样,而无需查询设备。我不确定是否可以查询所有设备的扇区大小(我特别考虑旧设备)。如果某些设备假设您假设它们的扇区大小为 512 字节,查询它们毫无意义,因此它们不支持查询它们,我不会感到惊讶。
您甚至可以对 512 字节的值进行硬编码,这样它就可以与 ATA 驱动器一起使用。
当硬盘开始在物理上内部使用 4096 字节扇区时,事情就变得复杂了。如果软件总是查询设备的扇区大小并根据响应进行调整,那么新磁盘就可以简单地响应4096
并继续运行。仅“扇区大小”这个概念就足够了。
但由于许多软件尚未为此做好准备,因此引入了 512e。通过使用 512 字节的逻辑扇区大小,它将自己伪装成旧磁盘。就像它说的那样:“把我当成旧磁盘,用你认为我支持的 512 字节扇区来跟我说话;我会处理剩下的事情。”
这正是应该发生的事情。您可以按照 512 字节扇区来谈论此类磁盘。你用他们的逻辑扇区。磁盘将处理向其更大物理扇区的转换内部。
请注意,您之所以提出这个问题,是因为您知道“逻辑”和“物理”可能有所不同。旧软件通常不了解;它不关心。512e 的全部目的是向外部呈现 512 字节的扇区,以满足否则无法工作的软件。
尽管如此,了解物理扇区大小还是有好处的,这就是硬盘同时报告“物理”和“逻辑”的原因。请参阅硬盘报告其物理扇区大小有什么意义?不关心的旧软件可能会使用 512e 磁盘实现次优性能,但至少它可以工作。