Linuxでプロセスごとのメモリ使用量を調べるコマンド

1.topを実行して 次のコマンドをする
shift+m メモリ使用量が多いもの順
shift+t 実行時間が長い順
shift+n プロセスID順
shift+a  新しいタスク順
shift+p cpuの使用時間率の長いもの順

説明:
VIRT (Virtual Image ):プロセスの仮想メモリの使用量
VRTはプロセスのコード、データ、ライブラリ、スワップアウトしたページ、メモリマップファイルの内,まだ使用されたいないものの合計であるわけで
、全てがメモリを指しているわけではない。

RES (Resident Memory):プロセスの物理メモリの使用量
RESは実際にプロセスに利用されているデータの合総計を示している。

SHR (Shared Memory):プロセスの共有メモリ量
ライブラリなど他のアプリケーションからも利用される可能性のあるメモリの総計である。

2.[root@startnews24 ~]$ ps aux |grep nginx|awk '{print $5,$6}’
8292 356
23848 796
24560 2060
107452 936
説明:
RSS:固定メモリ使用量  VSZ:仮想メモリ使用量

3.[root@startnews24 ~]$ ps -e -o “pid,comm,args,pcpu,rsz,vsz"|grep nginx
4539 nginx nginx: master process /usr/ 0.0 796 23848
4540 nginx nginx: worker process 0.0 2060 24560
30275 grep grep nginx 0.0 944 107456
説明:
RSZ:実メモリ使用量   VSZ:仮想メモリ使用量

4.PID=`ps -ef|grep nginx`
cat /proc/$PID/status|grep “VmSize" //メモリの使用量を確認

例 [root@startnews24 ~]$ ps -ef|grep nginx
nginx 2210 1 0 2013 ? 00:00:00 /usr/local/sbin/fcgiwrap
root 4539 1 0 Feb03 ? 00:00:00 nginx: master process /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
nobody 4540 4539 0 Feb03 ? 00:09:39 nginx: worker process
root 30280 30241 0 21:16 pts/0 00:00:00 grep nginx
[root@startnews24 ~]$ cat /proc/2210/status|grep “VmSize"
VmSize: 8292 kB
[root@startnews24 ~]$ cat /proc/4539/status|grep “VmSize"
VmSize: 23848 kB

Linux

Posted by arkgame