VMSTAT(8) | FreeBSD System Manager's Manual | VMSTAT(8) |
名称
vmstat — 仮想メモリの統計情報を報告する書式
vmstat | [ -afHhimPsz][ -c count][ -M core [ -N system]][ -w wait][ -n devs][ -p type, if, pass][ disks] |
解説
vmstat ユーティリティは、プロセス、仮想メモリ、ディスク、トラップ、CPU の活動状況などについてカーネルが持っている統計情報を報告します。-M オプションが指定されていない場合には、現在実行中のカーネルから sysctl(3) インタフェース経由で情報を取得します。そうでなければ、指定されたカーネルイメージ (またはデフォルトのイメージ) 中の名前リストを使用して、指定されたコアファイルから情報を読み込みます。
オプション:
- -a
- -i と組み合わせて使われた場合には、発生していない割り込みの統計を含めます。
- -c
- 表示を count 回繰り返します。最初の表示は、リブート時からの統計で、その後の表示は、直前の表示から現在までの間の統計です。繰り返し回数 count を指定せず、 -w を指定すると、デフォルトは、無限になります。そうでない場合、デフォルトは、1 になります。
- -f
- システムが起動してからの fork(2), vfork(2), rfork(2) システムコールの回数と、それぞれのシステムコールで使われた仮想メモリのページ数を表示します。
- -h
- メモリカラムをより容易に人間に読み込み可能な形式に変更します。標準出力が端末デバイスであるなら、デフォルトです。
- -H
- メモリカラムを素直に数に変更します。標準出力が (スクリプトのような) 端末デバイスでないなら、デフォルトです。
- -i
- システムが起動してから各デバイスで起こった割り込みの回数を表示します。
- -M
- 指定された core から、名前リストに関連する値を取り出します。
- -N
- -M も指定されていれば、名前のリストを取り出す際に、デフォルトの代わりに指定された system を使います。デフォルトは、システムがブートに使用したカーネルイメージです。
- -m
- タイプによって malloc(9) を使用して割り付けられたカーネルの動的なメモリの使用状況を報告します。
- -n
- 表示する最大ディスク数を、デフォルトの 2 から変更します。
- -P
- cpu 毎にシステム/ユーザ/アイドル cpu 統計値を報告します。
- -p
-
どのタイプのデバイスを表示するのかを指定します。 3 種類のカテゴリのデバイスがあります:
- デバイスタイプ:
-
- da
- ダイレクトアクセス
- sa
- シーケンシャルアクセスデバイス
- printer
- プリンタ
- proc
- プロセッサデバイス
- worm
- ライトワンスリードマルチプルデバイス
- cd
- CD デバイス
- scanner
- スキャナデバイス
- optical
- オプティカルメモリデバイス
- changer
- メディアチェンジャデバイス
- comm
- コミュニケーションデバイス
- array
- ストレージアレイデバイス
- enclosure
- エンクロージャサービスデバイス
- floppy
- フロッピデバイス
- インタフェース:
-
- IDE
- Integrated Drive Electronics デバイス
- SCSI
- Small Computer System Interface デバイス
- other
- その他のデバイス
- パススルー:
-
- pass
- パススルーデバイス
ユーザは、少なくとも 1 つのデバイスタイプを指定する必要があり、各カテゴリにおいては、最大 1 つのデバイスタイプを指定可能です。 1 つのデバイスタイプ文に複数のデバイスタイプを指定するには、コンマで区切ります。
コマンドライン上では、 -p 引数をいくつ指定してもかまいません。 -p 引数は、すべて OR がとられ、システム内の全デバイスが対象となる比較式が形成されます。いずれかの -p 引数に完全に合致するデバイスは、 vmstat の出力に含まれます。ただし、2 デバイスもしくはユーザが指定した最大デバイス数の範囲に限られます。
- -s
- sum 構造体の内容を表示し、システムが起動してから起こったいくつかの種類のページング関連のイベントの合計を報告します。
- -w
- 各表示の間で、 wait 秒停止します。停止間隔 wait を指定していなければ、デフォルトは、1 秒になります。 vmstat コマンドは、整数でない秒の数を受け付けます。
- -z
- ゾーン別にカーネルゾーンアロケータ、 uma(9) によって使用されたメモリを報告します。
デフォルトでは、 vmstat は、以下の情報を表示します。
- procs
-
以下の各状態でのプロセス数に関する情報
- r
- 実行待ち行列にある状態
- b
- リソース確保 (i/o やページングなど) のためにブロックされている状態
- w
- 実行可能または短期間のスリープ中 (20 秒以内) であるが、スワップされている状態
- memory
-
仮想メモリと実メモリの使用状況に関する情報を表示します。実行中または最近 20 秒間で実行されたプロセスに属する仮想ページ (1024 バイト単位で表示される) は、アクティブであるとみなします。
- avm
- アクティブな仮想ページ
- fre
- フリーリストのサイズ
- page
-
ページフォルトとページングの活動状況に関する情報を表示します。これらは、5 秒間の平均として、秒単位で表示します。
- flt
- ページフォルトの総数
- re
- 要求されたページ数 (参照ビットをシミュレート)
- pi
- ページインされたページ数
- po
- ページアウトされたページ数
- fr
- 秒単位の解放されたページ数
- sr
- クロックアルゴリズムによってスキャンされたページ数 (秒単位)
- disks
- 秒単位のディスク操作に関する情報 (このフィールドは、システム依存です)。通常、ページングは、使用可能なドライブにまたがって分割されます。このフィールドのヘッダは、ディスク名の最初の 2 文字とユニット番号です。システムが 2 つ以上のディスクドライブを扱うように設定されている場合、 vmstat は、最初の 2 つのドライブしか表示しません。ただし、ユーザが -n 引数を指定して表示するデバイス数を増した場合は別です。この場合、表示が 80 桁を越えてしまうかもしれません。 vmstat で特定のドライブを表示するには、コマンド行でドライブ名を指定します。デフォルトでは、 vmstat ユーティリティは、ディスクを最初に、それからシステム内の他の様々なランダムデバイスを合計 2 つまで、もしあれば表示します。デバイスをコマンドラインで指定した場合、もしくはデバイスタイプが合致するパターンが指定された場合 (前述)、 vmstat は、指定されたデバイスもしくはパターンに合致するデバイスのみを表示し、システム内の他のデバイスをランダムに選択するということはありません。
- faults
-
最近 5 秒間のトラップ/割り込みの平均レート (秒単位)。
- in
- デバイス割り込み (クロック割り込みを含む) の回数
- sy
- システムコールの回数
- cs
- cpu のコンテキストスイッチの回数
- cpu
-
CPU 使用時間の内訳 (%)
- us
- 通常およびそれより低い優先度のプロセスのユーザ時間
- sy
- システム時間
- id
- CPU アイドル時間
関連ファイル
- /boot/kernel/kernel
- デフォルトのカーネル名前リスト
- /dev/kmem
- デフォルトのメモリファイル
使用例
コマンド:は、システムがどのように動作しているかを 5 秒おきに表示します。 5 秒おきにサンプリングされている統計情報があるため、この間隔で表示するのがちょうどよいです。その他の統計情報は、1 秒毎に変化します。しばらく出力を続ければ、どれが毎秒計算し直されているかがわかるでしょう。vmstat -w 5
コマンド:
vmstat -p da -p cd -w 1
は、ダイレクトアクセスデバイスもしくは CDROM デバイスから最初の 2 つのデバイスを選択し、他のシステム統計情報と同様に、毎秒これらのデバイスの統計情報を表示します。
関連項目
fstat(1), netstat(1), nfsstat(1), ps(1), systat(1), libmemstat(3), gstat(8), iostat(8), pstat(8), sysctl(8), malloc(9), uma(9)Installing and Operating 4.3BSD の ``Interpreting system activity'' で始まるセクション
バグ
-c と -w オプションは、デフォルトの出力を行うときにのみ有効です。October 21, 2006 | FreeBSD |