Ubuntu 需要 Swap,为什么 Windows 不需要?

Ubuntu 需要 Swap,为什么 Windows 不需要?

我了解到,为了在 Ubuntu 中使用休眠选项,应该分配交换空间,为什么 Windows 不一样?我的 Win 7 没有任何交换空间,但仍然可以无故障地休眠。

答案1

Windows 使用文件而不是分区来实现这一点。根据维基百科

文件“hiberfil.sys”用于在计算机休眠时存储 RAM 的内容,其大小始终与总 RAM 相同。隐藏的系统文件位于系统分区的根目录中,通常为“C:\hiberfil.sys”。

关于为什么linux默认使用分区。说实话我不知道,但我猜是出于性能原因。

编辑:正如评论中指出的那样,您还可以按照此问题的答案中的解释交换到文件问题

答案2

通常,当 RAM 超出时,会使用交换文件来释放 RAM,方法是将其内容存储到交换文件中。在 Windows 环境中,这是一个存储在系统分区上的文件(通常是 pagefile.sys)。在 Linux 中,建议为交换创建一个额外的分区。据我所知,这不是必需的,您应该能够在没有额外分区的情况下进入休眠状态,因为 Linux 也应该能够使用文件。有关更多信息:https://superuser.com/questions/21020/can-i-hibernate-linux-without-a-swap-partition

额外交换分区的优点是:

  1. 安全性:Linux 在关机之前安全地擦除交换文件,因此没有人可以恢复它。
  2. 性能:您可能希望将交换分区映射到 SSD 以提高速度。
  3. 即使您的系统分区已满,您仍然还有一些空间用于交换数据。

答案3

Linux 使用交换分区进行分页和休眠。Windows 则对每个分区使用单独的文件。它使用 pagefile.sys 进行分页,使用 hiberfil.sys 进行休眠,因此虽然您可能没有分页文件,但您仍然有一个休眠文件。

相关内容