TOP命令的内存使用情况


14

在SuSE下,(内存:总计31908592k,已使用31421504k,)我如何知道使用内存的进程或程序?

Answers:


24

用于检查进程的cpu /内存使用情况的标准(命令行)程序top还具有稍微更多的功能,htop但是无论如何在很多系统上它都是绑定的(在大多数现代linux系统上几乎总是绑定top相同的方法) 。还有各种用于top / htop的GUI包装器bashsh

打开顶部后,单击M将按内存使用量进行排序。

编辑-4-12 为清楚起见,我决定扩展排序。这是top从终端外壳运行时的典型窗口,该窗口已按以下顺序排序%MEM

在此处输入图片说明

您最感兴趣的列%MEM将为您提供该进程使用的总可用内存份额。VIRT给出进程的虚拟内存占用RES量,当前仅在物理内存中占用该内存(其余的已换出,并且当前未在表中显示)

为了按列排序,请按F(shift-F),屏幕将切换到以下内容

在此处输入图片说明

如您所见,n单击将选择按内存百分比排序(单击Enter以返回到表格视图)。(有一个传统的快捷键Shift-m,当在表视图上命中时,它将按内存切换排序)。您可以在表视图中使用<>(shift-和shift-。)来循环排序的列。

在表格视图中,单击小写m将切换内存摘要视图。在此处输入图片说明

注意:我玩弄排序列,以便从第一张图片开始对这些列进行排序。

像许多unix / linux命令行实用程序一样,有许多小技巧和东西以及隐藏的功能-top是一个非常强大的工具。例如,您可以同时显示多个表(比如说前5个而不是前20个,但是有4-5个不同的参数)-怎么做?我不知道,但是在截取屏幕截图时我不小心碰到了这一点。一本关于* nix的好书的整章都可以专门讨论top,因此上面的摘要只是一个入门知识,可以让了解有关过程的知识。


Crasic,谢谢您的回答,我知道顶级命令将向您显示:(备忘录:总计31908592k,已使用31153712k,免费754880k,)但是我想知道是否所有这些内存都已使用。
2011年

查看顶部的“%MEM”列。
Daniel Andersson

@AlBouazizi Top默认情况下将按CPU命中率M(即Shift-m)对进程(横幅栏下方的列表)进行排序(根据内存使用情况对列表进行排序)。
crasic 2011年

感谢您的详细解答,我学到新的东西..但还是不知道的,通过该程序/过程中使用的31GB ..再次感谢您
AlBouazizi

@AlBouazizi按内存使用量排序时,页面顶部的程序是什么?
crasic 2011年

1

这将花费pmem&rss较长的过程,值得一试。

ps -eo pid,pmem,rss,comm --sort rss

Risyasin,我尝试了您的命令,但对我的查找没有帮助。我有31GB的已用内存。我需要知道谁使用了此内存。谢谢你。
2011年

0

您可以使用以下命令:

ps ww -eo pid,pcpu,pmem,rss,cmd --sort rss

字段“ rss”指示内存使用情况

--sort rss-表示按内存使用情况desc排序

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.