有没有什么工具可以帮助我轻松监控 Linux 上每个进程的内存使用情况?

有没有什么工具可以帮助我轻松监控 Linux 上每个进程的内存使用情况?

这个问题与如何查看 Linux 进程的内存使用情况

此外,该top命令并没有给出确切的内存使用情况,而只是给出了一个进程使用的百分比,那么有没有什么强大的工具可以帮助我轻松监控 Linux 上每个进程的内存使用情况?

答案1

嗯,怎么样top

VIRTRES和列SHR(在我使用过的每个 top 版本中默认存在)列出了所消耗的内存(以 kb 为单位),这正是您要找的内容。

答案2

我使用 htop。

htop 图片

额外的角色......

答案3

如果您出于某种原因不喜欢top,您还可以使用来监视正在运行的进程(以及任何其他内容)的内存使用情况Cacti,这也会为您提供很好的视觉输出。

事实上,Cacti 论坛上有人为这个事情写了一个脚本……一张图表展示正在运行的进程的内存使用情况。它是为 Windows 设计的,但在 Linux 中使用 Cacti 也相当容易(甚至更容易)地完成。

答案4

简短的回答是“不”。

分配给进程的内存区域可能是只读、写时复制或可写的。只有在可写(非共享)内存的情况下,它才会直接分配给进程。只读和 COW 页面很难被计算为只被多次引用(因为每个进程看到的物理页面位于不同的地址)。

ps_mem.py比 ps / top 等做得更好 - 但距离准确衡量内存的实际情况还有很长的路要走 - 特别是在运行大量服务器的机器上。

相关内容