当我从设备读取分区表(MBR或GPT)时,是以逻辑块大小或标称512字节扇区为单位的数字?令人惊讶的是,我无法通过谷歌搜索找到规范的答案。
答案 0 :(得分:1)
根据进一步调查结论已被撤销
虽然几乎所有驱动器都使用512字节逻辑扇区,但现代分区表使用LBA地址,而LBA单元大小是设备的逻辑扇区大小,现在可能高达4096字节。
最后,我将关于单位大小的问题发布到主要的GNU parted(分区编辑器)邮件列表,并收到了this response。具体做法是:
“LBA始终指的是驱动器的块大小。因此它可能是512或4096 或其他一些值,取决于驱动器报告的内容。“
以前的答案版本不正确:[[分区表(在MBR中,否则)是指512字节块/逻辑扇区。请参阅示例https://en.wikipedia.org/wiki/Master_boot_record#PTE.]]
背景资料
磁盘物理磁盘扇区大小的报告似乎基本上是通过ATA-8规范中的命令完成的,特别是“IDENTIFY DEVICE”命令。兼容性问题(最常讨论)是I / O操作的对齐。显然大多数驱动器处理512字节对齐,但性能损失,尽管有一些驱动器被宣称为“4k native”或“4kn”,根本不支持512字节对齐的I / O.通常,具有物理4k扇区的驱动器使用所谓的“高级格式”,这可以帮助您搜索是否需要更多信息。
本文https://linuxconfig.org/linux-wd-ears-advanced-format有一些相对清晰的讨论,特别是如果您是Linux用户。对于它的价值,在Linux上,“parted -l”命令报告物理和逻辑扇区大小,parted也知道如何为高级格式设备正确地对齐分区。
此外,您可能会发现这篇文章http://www.seagate.com/tech-insights/advanced-format-4k-sector-hard-drives-master-ti/提供了有关该问题的信息并且让人放心。