8.4. CPU負荷の大きいプロセスを表示 【top】

$ top

実行中のプロセスに対して、CPU 負荷の大きいプロセスから順にリスト表示するには top というコマンドを使用します。表示内容は自動的に更新されます。また[Space]キーで表示内容を強制的に更新することもできます。

$ top
  6:40pm  up  7:26,  3 users,  load average: 0.00, 0.01, 0.01
72 processes: 69 sleeping, 3 running, 0 zombie, 0 stopped
CPU states:  3.1% user,  2.1% system,  0.0% nice, 94.6% idle
Mem:   126260K av,  101816K used,   24444K free,       0K shrd,    3124K buff
Swap:  313256K av,   40584K used,  272672K free                   50144K cached

  PID USER     PRI  NI  SIZE  RSS SHARE LC STAT %CPU %MEM   TIME COMMAND
  625 root      15  -1 41160  18M  3940  0 S <   2.7 15.1   4:15 X
  739 root      11   0  5208 2856  2416  0 S     0.9  2.2   0:08 kdeinit
  802 root       9   0  9140 8972  3636  0 S     0.5  7.1   3:30 xemacs
 1640 turbo     12   0   960  960   732  0 R     0.5  0.7   0:00 top
  713 root       9   0  3148  672   528  0 S     0.1  0.5   0:00 kdeinit
    1 root       8   0   124   80    60  0 S     0.0  0.0   0:03 init
    2 root       9   0     0    0     0  0 SW    0.0  0.0   0:01 keventd
    3 root       9   0     0    0     0  0 SW    0.0  0.0   0:00 kapm-idled
    4 root      19  19     0    0     0  0 SWN   0.0  0.0   0:00 ksoftirqd_CPU0
    5 root       9   0     0    0     0  0 SW    0.0  0.0   0:01 kswapd
    6 root       9   0     0    0     0  0 SW    0.0  0.0   0:00 bdflush
    7 root       9   0     0    0     0  0 SW    0.0  0.0   0:00 kupdated
    8 root       9   0     0    0     0  0 SW    0.0  0.0   0:00 i2oevtd
    9 root      -1 -20     0    0     0  0 SW<   0.0  0.0   0:00 mdrecoveryd
   50 root       9   0     0    0     0  0 SW    0.0  0.0   0:00 khubd
  284 root       9   0    60    4     4  0 S     0.0  0.0   0:00 apmd
  310 root       9   0   264  224   164  0 S     0.0  0.1   0:00 syslogd

また、top コマンドは指定されたキーをタイプするとプロセスを様々な順序に並べかえることができます。以下はその代表的な例です。

表 8-5. top コマンドのキー操作

NプロセスIDの順に並べます。
Aプロセスを新しい順に並べます。
Pプロセスを CPU の占有率順に並べます。
Mプロセスをメモリの占有率順に並べます。
Tプロセスを累積時間の順に並べます。

終了するには q をタイプします。

表示される情報の概要は次の通りです。

表 8-6. top コマンドの表示項目

PIDプロセスID
USERプロセスを実行しているユーザー名
PRIプロセスの優先順位
NIプロセスのナイス値
SIZEコード+データ+スタックのサイズ
RSSプロセスの物理メモリ使用量
SHAREプロセスの共有メモリ使用量
LC最後に利用されたプロセッサ
STATプロセスの状態(S:停止状態、D:割り込み不可能なスリープ状態、R:実行中、Z:ゾンビ、T:停止またはトレース中、<:負の nice 値を持つプロセス、N:正の nice 値を持つプロセス、W:スワップアウトされたプロセス)
%CPUCPU占有率
%MEMメモリ占有率
TIMEプロセスが利用したCPU時間
COMMAND実行コマンド