ubuntu 没有使用 100% 的内存

ubuntu 没有使用 100% 的内存

我在一台 2GB 的笔记本电脑上运行 ubuntu 8。每当我查看系统监视器时,我都会看到我的内存使用量略低于 1G。为什么 ubuntu 没有使用全部 2GB?

假设完整的 2GB 都被识别了,即系统监视器显示使用了 2GB 的 48%。

答案1

如果你想知道为什么它不将备用 RAM 用作缓冲区/缓存,原因是 Linux 不会预先读取内容。如果你打开几个程序,它会将从这些程序中读取的内容留在磁盘缓存中,但它没有类似超级提取来自 Windows Vista。

对于笔记本电脑来说,这可能是理想的。我怀疑任何类似 Superfetch 的算法都无法准确预测我将使用哪些应用程序,如果预测错误,就值得浪费电池。(尽管如果我预装了 Firefox,我会非常高兴!)

答案2

您在 ubuntu 上运行什么?您是否观察到任何性能故障并发现内存未被利用,或者这只是一般的观察。

如果您担心您的内存没有被使用,可能是因为不需要使用它。

尝试以下链接中的脚本,查看 Ram 的利用率。希望它能消除您的困惑。

http://www.linuxatemyram.com/play.html

答案3

嗯,一个答案是,页面被从物理内存中抛出(换出),因为它们最近没有被使用,所以将该内存用于磁盘缓存更有意义。(因为该缓存更常用。)你可以尝试

swapoff -a

这将关闭分页。(实际上,它会卸载所有分页文件/分区。)这通常会导致程序挤占缓存,但也可能会让内存不足杀手杀死一些最耗电的进程。(比如 Firefox。)当你受够了,就这么做

swapon -a

(请注意,我说的是“当”,而不是“如果”......)

答案4

正如 Alex 所说,Linux 没有 Vista/Win7 的 Superfetch 之类的抢占式缓存机制,因此它通常只会在实际请求时使用内存。此外,根据您设置的 swappiness 值,它的分页速度可能比您所需的速度快得多

相关内容