【Linux】top コマンド

  ■ top

 * サーバの稼働状況である「CPU」「メモリ使用率」「プロセスの稼働状況」などを、
   一定時間間隔でリアルタイムに表示

 

  ■ 構文

top 【オプション】

  主なオプション

`# `オプション `説明 `備考
1 -d 間隔「ss.tt」を指定[秒] -d:delay
2 -n 表示を繰り返す回数を指定 -n:number
3 -b バッチモード。キー操作を受け付けない。 -b:batch
4 -i 何も実行していないアイドルプロセスを非表示  

  ■ ソート順

`# `キー 説明
1 Shift + p CPU使用率でソート
2 Shift + m メモリ使用量でソート
3 Shift + t 実行時間でソート

  ■ 実行例

top -i

top -d 2 -n 10 -b > top.log

 

  ■ 出力結果例

top - 10:55:45 up 4 min,  2 users,  load average: 0.02, 0.14, 0.09
Tasks: 168 total,   1 running, 166 sleeping,   1 stopped,   0 zombie
%Cpu(s):  3.9 us,  0.3 sy,  0.0 ni, 95.8 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem:   4056560 total,   626128 used,  3430432 free,    35844 buffers
KiB Swap:  1324028 total,        0 used,  1324028 free,   292164 cached

  PID USER      PR  NI  VIRT  RES  SHR S  %CPU %MEM    TIME+  COMMAND           
 2863 root      20   0  179m  28m 5764 S   5.3  0.7   0:02.56 Xorg              
 4444 root      20   0  396m  21m  13m S   3.3  0.5   0:01.20 gnome-terminal    
  158 root      20   0     0    0    0 S   0.3  0.0   0:00.44 kworker/0:2

  出力項目

3行目 %Cpu(s)
`# `項目 説明
01 %us ユーザプロセスの使用時間の割合
02 %sy システムプロセスの使用時間の割合
03 %ni 実行優先度が変更したプロセス使用時間の割合
04 %id アイドル(待機)状態の使用時間の割合
05 %wa ディスクI/Oの終了待ちをしていた時間の割合
06 %hi ハードウェア割込要求での使用時間の割合
07 %si ソフトウェア割込要求での使用時間の割合
08 %st OS仮想化利用時に他のCPUに待たされた割合

4行目 Mem
 * メモリの総容量

 

5行目 Swap
 * スワップの総容量

※補足:スワップ(swap)
 => メモリが足りないときにメモリの中身をハードディスクに移す機能

 

6行目
`# `項目 説明
01 PID プロセスID
02 USER ユーザID
03 PR 静的優先度(数字が低い程優先度は高い)
04 NI 対的優先度(-20(最高)~19(最低))
05 VIRT 仮想メモリサイズ(スワップアウトされたメモリ使用量を加えたサイズ)
06 RES 物理メモリサイズ
07 SHR 共有メモリサイズ
08 S ステータス(状態。S:スリープ, T:停止中, R:実行中, W:スワップアウト, Z:ゾンビ)
09 %CPU CPU使用率
10 %MEM メモリ使用率
11 TIME+ プロセス実行時間
12 COMMAND 実行されているコマンド

※補足:スワップアウト(swap out)
 => 主記憶装置上にメモリの空き領域が少ない場合に、
    優先順位の低いジョブを補助記憶装置に移す

 

 

  関連記事

  【Linux】パフォーマンスに関わるコマンド ~ Linux編 ~

https://blogs.yahoo.co.jp/dk521123/34615658.html