我该如何理解 free 的输出?

我该如何理解 free 的输出?

我读过了顶部的“buff/cache”和“avail mem”字段是什么意思?https://askubuntu.com/questions/770108/what-do-the-changes-in-free-output-from-14-04-to-16-04-mean。但仍有疑问。

$ free -h
              total        used        free      shared  buff/cache   available
Mem:           7.7G        5.3G        268M        620M        2.1G        1.5G
Swap:           14G        874M         14G

“使用”是否已经包含“共享”?

可以从其他列确定“可用”吗?

为什么“可用”不等于“空闲”和“缓冲/缓存”之和?

我认为“buff/cache”实际上可以通过启动新进程来使用,那么为什么“available”比“buff/cache”小呢?

“已使用总数”(2.4G)由哪些列组成?为什么它和“可用”不一样?

谢谢。

答案1

联机free帮助页一些答案;尤其:

用过的 已用内存(计算为全部的-自由的-缓冲区-缓存

联机proc帮助页也值得一读(看/proc/meminfo说明)。

解决您的问题:

“使用”是否已经包含“共享”?

是的。

可以从其他列确定“可用”吗?

不;看“free -m”命令中“available”字段的含义如何跨发行版获取可移植的可用内存量?对于(血淋淋的)细节。

为什么“可用”不等于“空闲”和“缓冲/缓存”之和?

往上看。表示无需交换即可使用的内存量; “buff/cache”包括无法立即回收的内存,因此不可用。

我认为“buff/cache”实际上可以通过启动新进程来使用,那么为什么“available”比“buff/cache”小呢?

往上看。

“已使用总数”(2.4G)由哪些列组成?为什么它和“可用”不一样?

往上看。

相关内容