可能重复:
如何获取实际使用的内存(包括 RAM 磁盘)?
如果我把从 top -b -n 1 或 htop 或 ps aux 获得的所有内存使用量加起来,我得到的数字比使用 free 获得的数字少几 GB。内核可能会占用一些内存,但不会达到几 GB,不是吗?
答案1
检查 的输出free -m
。它看起来类似于以下内容:
total used free shared buffers cached
Mem: 7459 1483 5975 0 63 730
-/+ buffers/cache: 689 6769
Swap: 9536 0 9536
可能有不同的数字。第一行(“Mem:”)为您提供总体消耗,包括缓存和缓冲区(为了加快速度,Linux 使用空闲 RAM 来缓存诸如文件系统信息之类的内容 - 请参阅我的示例中的“缓存”列。如果其他地方需要此缓存占用的 RAM,则该缓存将缩小以释放它)。因此,请查看第二行(“-/+ buffers/cache:”),它为您提供应用程序实际使用的内存量(当然还有内核等)。这通常应该与您的计算完全匹配。