为什么我的 Windows 硬盘上缺少空间?

为什么我的 Windows 硬盘上缺少空间?

可能重复:
为什么硬盘有效容量比实际容量小?

我有一台 HP Pavilion DM4,硬盘容量为 750 GB。几天前,我在上面安装了 Windows 8,所以我现在双启动 Windows 7 和 Windows 8(而且我还有一个 100 MB 的系统保留分区)。

我注意到我只能看到 700 GB 的硬盘空间(Windows 8 为 169 GB,Windows 7 为 529 GB)。

我启动了 Ubuntu 11.04 LiveCD,磁盘实用程序显示我的 Windows 8 分区是 182 GB,Windows 7 分区是 568 GB,正确加起来是 750 GB。

我想恢复其各自分区中丢失的空间。有什么建议可以指导我如何操作吗?

答案1

问题是你搞混了二进制十进制前缀。

您说的是 750GB 对吧?这意味着 750,000,000,000B。现在将其转换为 GB:

750000000000/1024/1024/1024 = 698.5GB

这就是您说的您看到的情况。您可以对各个分区重复此操作,您将获得相同的结果。

为什么 Linux 会给出不同的结果?因为它不是除以 1,024(一千字节中的字节数、一兆字节中的千字节数等),而是除以 1,000。

这是一个经常引起混淆的地方,因为硬盘制造商总是使用 SI 前缀(以 1,000 为增量增加,即 10 的幂),因为这会使他们的驱动器听起来更大,而软件(尤其是 Windows)使用二进制前缀(以 1,024 为增量增加,即 2 的幂)。

所以你实际上并不是丢失的任何东西,也没有什么可以“找回”。“丢失”的空间只是由于对术语“千兆字节/GB”的解释存在差异/分歧。


至于为什么在安装 Windows 8 之前你看到它说 750GB,这取决于在哪里你看到了吗。你看到它说 750GB 了吗?我的电脑? Linux?系统信息工具?根据你所说的,我怀疑它是 Windows程序与 Windows 资源管理器相反。

在这种情况下,您可能会看到它显示 750GB,因为您使用的程序足够聪明,能够忽略 Windows 报告的磁盘空间,而是查看驱动器的设备 ID。然后它可以在表中查找 ID(或根据设备对其进行解码),并使用官方标签和描述。

举个例子,假设您有一块 Western Digital 750GB 硬盘。型号编码在硬盘的固件中,因此 Windows 能够看到类似这样的信息WD7500BPKT。Windows 还看到它有 750GB(十进制)的可用空间,并将其以二进制形式存储为 698.5GB(或者如果您喜欢婴儿语言二进制前缀,则为 GiB)。

像 Explorer 这样的简单程序会检索可用空间值并报告(在本例中为 698.5GB)。

另一方面,更高级的程序不会向 Windows 询问可用空间值,而是询问设备 ID。它看到WD7500BPKT后要么解码(对于 WD 硬盘,它们将大小编码在型号中),要么在数据库中查找并说;嘿,这是一个Western Digital WD Scorpio Black 750 GB SATA 3 GB。请注意 750GB。

或者,程序也可以只检查总字节数,然后(反复)除以 1,000 而不是 1,024,以报告制造商声明的大小。这在 Unix 工具的 Windows 移植中很常见。

答案2

我会在 Windows 中检查磁盘大小,在运行提示符(Windows 键 + R)中运行“diskmgmt.msc”,看看它显示的这些分区的大小,如果它显示的是您在 Windows 中看到的内容,那么这可能就是您将获得的全部内容,请查看并发布您所看到的内容,以便我们了解发生了什么!

答案3

您在 Windows 中看到的硬盘空间比应有的少,这是由于硬盘的营销方式造成的。

让我解释一下:你看到那些硬盘,1TB 硬盘之类的东西,对吧?你实际上看到的是十进制表示法任何存储单位。因此,当他们说 1TB 时,他们实际上指的是 10^12 字节(或 1,000,000,000,000 字节),而不是 2^40 字节(1,099,511,627,776 字节),这才是真正的 1TB。这种差异意味着您的驱动器实际上比应有的要小。

二进制表示法通常以,因此 TB 变为硼化钛并且 GB 变为吉布等等。

那么 Windows 如何计算驱动器大小?他们使用二进制表示法,这就是为什么它更小。Linux 使用 Dec-10 表示法,这就是为什么您看到的驱动器大小为 750GB。事实上,您可以使用一个方便的比率来计算二进制表示法中的真实 HDD 大小,如下所示:

decimal value / binary value = space discrepancy 

因此,对于 568 个十进制 GB 的 Windows 分区,您可以执行以下操作,这将为您提供一个可用于计算二进制硬盘大小的分数 -

(10^9/2^30) = 0.931322574615478515625

所以...

568 * 0.9313 = 528.9784 Binary gigabytes

如您所见,它与您的硬盘的 Windows 报告相符。我希望这能为您的困境提供一些帮助。

相关内容