![Linux“atop”:MEM 总计 -(已用 + 空闲 + 缓存 + hp)不相加](https://linux22.com/image/220274/Linux%E2%80%9Catop%E2%80%9D%EF%BC%9AMEM%20%E6%80%BB%E8%AE%A1%20-%EF%BC%88%E5%B7%B2%E7%94%A8%20%2B%20%E7%A9%BA%E9%97%B2%20%2B%20%E7%BC%93%E5%AD%98%20%2B%20hp%EF%BC%89%E4%B8%8D%E7%9B%B8%E5%8A%A0.png)
我试图找出“空闲”内存是如何计算的。我使用 atop 来查看每个进程消耗了多少,并查看存在多少 hp / 可用 / 缓存内存。我的问题是,我期望 tot - 使用的(包括 hp)将等于(免费 + 缓存),但事实并非如此。
我计算的方式是:
总结所有进程的所有 RSIZE。从顶部添加 hptot:
MEM | tot 25G | free 2.5G | cache 96.9M | dirty 1.7M | buff 6.5M | slab 93.5M | slrec 16.9M | shmem 3.1M | shrss 0.0M | hptot 8.1G | numnode 2 |
我的进程 RSIZE 总计为 13.5 G。
所以如果我采取全部 -(used + hp + cache + free)
我还剩下 900 MB。我想知道那些在哪里?是否有一些内存使用情况未在此顶部摘要中列出?