如何正确解释linux top?

时间:2010-08-10 17:29:40

标签: java linux memory-management top-command

我们正在运行以查找其内存使用情况的java程序。我们有一个512 ram的盒子和顶部显示,使用500左右的MB的ram,很少有空闲。但是在RES列中,我们可以看到jvm仅使用100MB左右。而所有其他过程甚至都不重要(小于1k)。那么到底消耗所有内存究竟是什么呢?或者我们只是读错了?

3 个答案:

答案 0 :(得分:2)

500MB包括页面缓存使用的内存 - 磁盘文件的缓存部分。此内存可以回收以供进程使用 - 因此,如果将列为“free”的内存添加到列为“cached”的内存中,那么您将拥有仍可供任务使用的内存。

或者,您可以使用free命令,该命令在-/+ buffers/cache:行的“免费”列中列出此图。

答案 1 :(得分:0)

多个应用程序(想想动态库)使用的内存也会在每次引用时计算,即使它占用一个副本。也可以尝试使用htop

答案 2 :(得分:-1)

那是保留的记忆。该过程不使用它,它是为它保留的。如果另一个进程想要分配更多内存,它将获得权限。