vmstat コマンドを使用すると、仮想メモリーの統計情報と、CPU の負荷、ページング、コンテキスト切替え数、デバイス割り込み、システムコールなどのシステムイベントに関する情報を表示できます。また、vmstat コマンドを使用すると、スワップ、キャッシュフラッシュ、割り込みに関する統計情報も表示できます。
詳細は vmstat(1M) のマニュアルページを参照してください。
時間間隔を指定して vmstat コマンドを使用すると、仮想メモリーの統計情報を収集します。
$ vmstat n
n |
レポート間の間隔を秒単位で表した値 |
表 64-1 に vmstat の出力内のフィールドを示します。
表 64-1 vmstat コマンドからの出力
カテゴリ |
フィールド名 |
説明 |
---|---|---|
procs |
|
次の状態を報告する。 |
|
r |
ディスパッチ待ち行列内のカーネルスレッド数 |
|
b |
資源を待機中のブロックされたカーネルスレッド |
|
w |
資源処理の完了を待機中のスワップアウトされた軽量プロセス数 |
memory |
|
実メモリーと仮想メモリーの使用状況を表示する。 |
|
swap |
使用可能なスワップ空間 |
|
free |
空きリストのサイズ |
page |
|
ページフォルトとページング動作を 1 秒当りの単位数として表示する。 |
|
re |
回収されたページ数 |
|
mf |
軽度のフォルトと重大なフォルト |
|
pi |
ページインされたキロバイト数 |
|
po |
ページアウトされたキロバイト数 |
|
fr |
解放されたキロバイト数 |
|
de |
最後にスワップインされたプロセスに必要だと予想されるメモリー |
|
sr |
ページデーモンによって走査されたページ数 (現在は使用されていない)。sr が 0 以外の値であれば、ページデーモンは実行されている。 |
disk |
|
最高 4 台のディスク上のデータを示す、1 秒当りのディスク処理数を表示する。 |
faults |
|
トラップ/割り込み率 (1 秒当り) を表示する。 |
|
in |
1 秒当りの割り込み数 |
|
sy |
1 秒当りのシステムコール数 |
|
cs |
CPU のコンテキスト切替え率 |
cpu |
|
CPU 時間の使用状況を表示する。 |
|
ユーザー時間 |
|
|
システム時間 |
|
|
次の例に、5 秒間隔で収集された統計情報に関する vmstat の表示を示します。
$ vmstat 5 procs memory page disk faults cpu r b w swap free re mf pi po fr de sr f0 s3 -- -- in sy cs us sy id 0 0 8 28312 668 0 9 2 0 1 0 0 0 1 0 0 10 61 82 1 2 97 0 0 3 31940 248 0 10 20 0 26 0 27 0 4 0 0 53 189 191 6 6 88 0 0 3 32080 288 3 19 49 6 26 0 15 0 9 0 0 75 415 277 6 15 79 0 0 3 32080 256 0 26 20 6 21 0 12 1 6 0 0 163 110 138 1 3 96 0 1 3 32060 256 3 45 52 28 61 0 27 5 12 0 0 195 191 223 7 11 82 0 0 3 32056 260 0 1 0 0 0 0 0 0 0 0 0 4 52 84 0 1 99
vmstat -s を実行すると、システムを前回ブートした後に発生した各種システムイベントの合計が表示されます。
$ vmstat -s 0 swap ins 0 swap outs 0 pages swapped in 0 pages swapped out 1329913 total address trans. faults taken 25270 page ins 3787 page outs 38082 pages paged in 13417 pages paged out 3034 total reclaims 3033 reclaims from free list 335879 micro (hat) faults 994034 minor (as) faults 24210 major faults 300634 copy-on-write faults 141744 zero fill page faults 34341 pages examined by the clock daemon 5 revolutions of the clock hand 28134 pages freed by the clock daemon 11174 forks 1259 vforks 9086 execs 11479519 cpu context switches 95234544 device interrupts 1426943 traps 9100502 system calls 1939346 total name lookups (cache hits 88%) 496 toolong 185566 user cpu 977189 system cpu 92045953 idle cpu 130914 wait cpu
vmstat -S を実行すると、スワップの統計情報が表示されます。
$ vmstat -S procs memory page disk faults cpu r b w swap free si so pi po fr de sr f0 s1 s3 -- in sy cs us sy id 0 0 0 6224 5536 0 0 0 0 0 0 0 0 0 0 0 2 9 12 0 1 99
表 64-2 に上記以外のフィールドを示します。
表 64-2 vmstat -S コマンドからの出力
フィールド |
説明 |
---|---|
si |
1 秒当りにスワップされた平均軽量プロセス数 |
so |
スワップアウトされた全プロセス数 |
vmstat コマンドは、これらの両フィールドを出力しません。スワップ統計情報の詳細情報を表示するには、sar コマンドを使用してください。
vmstat -c を実行すると、仮想キャッシュのキャッシュフラッシュ統計情報が表示されます。
$ vmstat -c flush statistics: (totals) usr ctx rgn seg pag par 14512 20201 0 1811 1857286 815505
このコマンドを実行すると、前回のブート後に発生したキャッシュフラッシュの合計数が表示されます。表 64-3 にキャッシュタイプを示します。
表 64-3 vmstat -c コマンドからの出力
キャッシュ名 |
キャッシュタイプ |
---|---|
usr |
ユーザー |
ctx |
コンテキスト |
rgn |
領域 |
seg |
セグメント |
pag |
ページ |
par |
ページの一部 |
vmstat -i を実行すると、各デバイス当りの割り込み数が表示されます。
$ vmstat -i
次の例は、vmstat -i コマンドからの出力を示します。
$ vmstat -i interrupt total rate --------------------------------- clock 104638405 100 esp0 2895003 2 fdc0 0 0 --------------------------------- Total 107533408 102