绑定完请刷新页面
取消
刷新

分享好友

×
取消 复制
如何获取一个进程所占用的内存
2020-07-07 13:52:41

本文收录于 GitHub 日问: DailyQuestion,内含大厂内推机会、面经大全及若干面试题,每天学习五分钟,一年进入大厂中。

通过 ps 可以获知一个进程所占用的内存

$ ps -O rss -p 3506
  PID   RSS S TTY          TIME COMMAND
 3506  6984 S pts/1    00:00:00 vim
复制代码

如果要监控内存,肯定使用对进程万能的命令 pidstat (PS: 这名字一听就知道是干嘛的)

# -r 显示内存信息
# -p 指定 pid
# 1: 每个一秒打印一次
$ pidstat -r -p 3506 1
Linux 3.10.0-957.21.3.el7.x86_64 (shanyue)      11/04/19        _x86_64_        (2 CPU)

20:47:35      UID       PID  minflt/s  majflt/s     VSZ    RSS   %MEM  Command
20:47:36        0      3506      0.00      0.00  139940   6984   0.18  vim
20:47:37        0      3506      0.00      0.00  139940   6984   0.18  vim
20:47:38        0      3506      0.00      0.00  139940   6984   0.18  vim
20:47:39        0      3506      0.00      0.00  139940   6984   0.18  vim
20:47:40        0      3506      0.00      0.00  139940   6984   0.18  vim
20:47:41        0      3506      0.00      0.00  139940   6984   0.18  vim
复制代码

pidstat 是属于 sysstat 下的 linux 性能工具,但在 mac 中,如何定位内存的变化?此时可以使用万能的 top/htop

$ htop -p 31796
复制代码

image

总结

简而言之,有以下三个命令

  1. pidstat -r
  2. htop/top -p
  3. ps -O rss -p

关于更多指标的监控可以参考我的文章: linux 各项监控指标小记



分享好友

分享这个小栈给你的朋友们,一起进步吧。

前端问题剖析
创建时间:2020-07-08 10:02:14
本小栈包含前端问题、云服务器、以及包含更多大厂面试问题汇总。
展开
订阅须知

• 所有用户可根据关注领域订阅专区或所有专区

• 付费订阅:虚拟交易,一经交易不退款;若特殊情况,可3日内客服咨询

• 专区发布评论属默认订阅所评论专区(除付费小栈外)

栈主、嘉宾

查看更多
  • llittle
    栈主

小栈成员

查看更多
  • 小雨滴
戳我,来吐槽~