当 linux 操作系统内存不足且没有交换时会发生什么

Chi*_*aha 26 memory linux swap

当 linux 操作系统内存不足且没有可用交换时会发生什么?

Dav*_*rtz 39

当操作系统的 RAM 不足且没有交换时,它会丢弃干净的页面。它不能丢弃脏页,因为它必须先将它们写入某处。如果没有足够的 RAM 来容纳工作集,这会导致颠簸和性能不佳。这是您真正想要交换的主要原因之一——因此操作系统可以更好地决定要驱逐哪些页面。

在没有交换的情况下,一旦没有更多干净的页面要逐出,系统就会耗尽虚拟内存(严格来说,RAM+交换)。然后它将不得不终止进程。

内存不足是完全正常的。这只是使用RAM的负面影响。没有用完 RAM 同样可以被描述为“浪费 RAM”。一旦所有 RAM 都在使用中,操作系统就会明智地决定哪些内容应该保留在 RAM 中,哪些内容不应该保留。没有任何交换,它的选择更少。

有或没有交换,当逐出页面不够时,操作系统将首先拒绝允许需要内存的操作(例如mmapfork)成功。但是,有时这还不够,必须终止进程。

  • +1“用完 RAM 是完全正常的。这只是使用 RAM 的负面影响。没有用完 RAM 同样可以被描述为“浪费 RAM”。” (4认同)