vmstat コマンドを使用すると、仮想メモリーの統計情報と、CPU の負荷、ページング、コンテキスト切替え数、デバイス割り込み、システムコールなどのシステムイベントに関する情報を表示できます。また、vmstat コマンドを使用すると、スワップ、キャッシュフラッシュ、および割り込みに関する統計情報も表示できます。
詳細は、vmstat(1M) のマニュアルページを参照してください。
時間間隔を指定して vmstat コマンドを使用すると、仮想メモリーの統計情報を収集します。
$ vmstat n
n |
レポート間の間隔を秒単位で表した値 |
表 26-1 に vmstat の出力内のフィールドを示します。
表 26-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 2560974 total address trans. faults taken 495226 page ins 52459 page outs 1088645 pages paged in 420615 pages paged out 34409 total reclaims 34104 reclaims from free list 0 micro (hat) faults 2560974 minor (as) faults 493981 major faults 450203 copy-on-write faults 609679 zero fill page faults 2669301 pages examined by the clock daemon 195 revolutions of the clock hand 1234901 pages freed by the clock daemon 14228 forks 3979 vforks 16151 execs 212282273 cpu context switches 248366049 device interrupts 5891779 traps 529830492 system calls 4028123 total name lookups (cache hits 95%) 1969 toolong 7272260 user cpu 3047366 system cpu 171183965 idle cpu 348263 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 s3 -- -- in sy cs us sy id 0 0 0 5604 1860 0 0 2 0 2 0 1 0 0 0 0 36 291 116 4 2 94
表 26-2 に上記以外のフィールドを示します。
表 26-2 vmstat -S コマンドからの出力
フィールド |
説明 |
---|---|
si |
1 秒当りにスワップされた平均軽量プロセス数 |
so |
スワップアウトされた全プロセス数 |
vmstat コマンドは、これらの両フィールドを出力しません。スワップ統計情報の詳細情報を表示するには、sar コマンドを使用してください。
vmstat -c を実行すると、仮想キャッシュのキャッシュフラッシュ統計情報が表示されます。
$ vmstat -c usr ctx rgn seg pag par 0 60714 5 134584 4486560 4718054
このコマンドを実行すると、前回のブート後に発生したキャッシュフラッシュの合計数が表示されます。表 26-3 にキャッシュタイプを示します。
表 26-3 vmstat -c コマンドからの出力
キャッシュ名 |
キャッシュタイプ |
---|---|
usr |
ユーザー |
ctx |
コンテキスト |
rgn |
領域 |
seg |
セグメント |
pag |
ページ |
par |
ページの一部 |
vmstat -i を実行すると、各デバイス当りの割り込み数が表示されます。
$ vmstat -i
次の例は、vmstat -i コマンドからの出力を示します。
$ vmstat -i interrupt total rate -------------------------------- clock 181871074 100 zsc0 2 0 zsc1 6523622 3 cgsixc0 63951 0 lec0 6433537 3 fdc0 13309 0 -------------------------------- Total 194905495 107