如何监视 OSX 中从终端运行的进程的内存使用情况

如何监视 OSX 中从终端运行的进程的内存使用情况

我正在从 OSX 终端运行一个名为 casperJS 的命令行实用程序(通过 node npm 安装)。这是一个长时间运行的进程,我想查看它以及任何子进程使用了​​多少内存。

我在活动监视器中看不到该进程,那么如何知道它使用了多少内存?

答案1

在活动监视器中,您可以按层次结构查看进程列表,以便轻松找到从终端启动的任何进程。只需选择所有流程均按层次划分在工具栏中。

截屏

对于有问题的工具,我希望进程被调用phantomjsslimerjs基于 Python 启动器。

答案2

您可以使用ps它,例如:

ps x -o rss,vsz,command | grep FooProcess

然后使用()按进程的实际内存(驻留集)大小排序sort -nr

答案3

您可以使用此命令来监控以下使用情况PROCESSNAME

top -l 1 | grep "PROCESSNAME" | awk '{print "MEM="$9 "\tRPRVT="$10}'

答案4

您可以运行相同的程序,但转发 x11。

这意味着你将在桌面上打开你正在通过 SSH 登录的物理窗口 - 就可视化而言,效果要好得多

这是有关如何设置 x11 的教程。操作非常简单,而且非常方便。(此外,它对于运行图形安装程序向导也很有用!)

http://dyhr.com/2009/09/05/how-to-enable-x11-forwarding-with-ssh-on-mac-os-x-leopard/

编辑:下面是我为您截取的一个例子,其中我使用 X11 转发(putty)从我的 Windows 计算机通过 SSH 连接到我的 Linux 计算机,然后启动我的系统监视器 Ksysguard。如您所见,整个窗口的显示方式与您在实际计算机上时一样。捕获 SSH 和 X11

通过 x11 运行的进程管理器图像

相关内容