free 和 htop 中的内存使用情况统计信息不同

free 和 htop 中的内存使用情况统计信息不同

当我free -m在命令行中运行时,它会显示我使用的内存,如下所示。当我运行时htop显示的已用内存非常低。

这是为什么?这是其他形式的表现吗?我是 Linux 新手。所以我对这些东西一无所知。

   total   3    used       free     shared    buffers     cached
   5863       4980        882          0        903       3025

htop:

Mem[|||||#####*****1076/586]

free 中已使用的内存显示为 4980MB,htop 中显示为 1076MB。它们实际上代表什么?

答案1

主要区别在于 htop 会将缓存内存和缓冲区计入可用内存,而 free 命令则不会。这将使使用 free 命令

4980 - 3025 - 903 = 1052 已用内存

这与 htop 的 1076 非常接近。差异可以解释这里. (这解释了在 openSUSE 上的情况,我认为在 Ubuntu 上情况会几乎相同),或者如果您不同时运行这两个命令。

这里解释了为什么缓冲区和缓存内存有时被认为是免费的。

相关内容