Windows XP 上用于高级格式硬盘的物理扇区大小

Posted

技术标签:

【中文标题】Windows XP 上用于高级格式硬盘的物理扇区大小【英文标题】:Physical Sector Size on Windows XP for advanced format hard disks 【发布时间】:2012-07-03 07:09:56 【问题描述】:

我需要检索硬盘的物理扇区大小以确定硬盘在 Windows XP 中是否为高级格式。

我尝试使用STORAGE_ACCESS_ALIGNMENT_DESCRIPTOR,但它在 Windows XP 中不兼容。我使用的任何方法都会返回 512 而不是 4096,其中包括 WMI,其中返回的唯一值是 512。

我一直在使用 C++ 进行编码,如果有人能指出一种可以帮助我找到实际物理扇区大小的方法,我将非常感激。

【问题讨论】:

STORAGE_ACCESS_ALIGNMENT_DESCRIPTOR 仅在 VISTA 中有效,在 windows xp 中,windows api 和 WMI 即使对于 4096 扇区大小的硬盘也仅返回 512 【参考方案1】:

根据微软的MSDN article:

Windows XP、Windows Server 2003 和 Windows Server 2003 R2 不支持 支持 512e 或 4Kn 媒体。虽然系统可能会启动并能够 最低限度地运行,可能存在未知的功能场景 问题、数据丢失或次优性能。因此,微软 强烈警告不要将 512e 媒体与 Windows XP 或其他 基于 Windows XP 代码库的产品(例如 Windows Home Server 1.0、Windows Server 2003、Windows Server 2003 R2、Windows XP 64 位版、Windows XP Embedded、Windows Small Business Server 2003 和 Windows Small Business Server 2003 R2)。

在 Windows XP 下,您将无法获得真正的物理扇区大小,因为操作系统本身假定它是 512 字节。

【讨论】:

以上是关于Windows XP 上用于高级格式硬盘的物理扇区大小的主要内容,如果未能解决你的问题,请参考以下文章

从物理硬盘读取数据

从物理硬盘读取数据

过渡到高级格式化 4K 扇区硬盘

Linux磁盘管理和文件系统

硬盘4k对齐

硬盘分区对齐