名前

vmstat - 仮想メモリの統計を報告する

書式

vmstat [-a] [-n] [delay [ count]]
 
vmstat [-f] [-s] [-m]
 
vmstat [-S unit]
 
vmstat [-d]
 
vmstat [-p disk partition]
 
vmstat [-V]

説明

vmstat はプロセス・メモリ・ページング・ブロック IO・トラップ・CPU 稼働状況 などに関する情報を報告する。
 
最初に作成される報告では、最後に再起動して以降の平均が与えられる。 それ以降の報告では、長さ delay のサンプリング期間に関する情報が与えられる。 プロセスとメモリに関する報告は、いずれも報告の瞬間のものである。
 

オプション

-a
2.5.41 以降のカーネルで指定すると、 アクティブ/非アクティブなメモリの表示する。
-f
ブート後の fork 数を表示する。 これには fork, vfork, clone システムコールが含まれ、 生成されたタスク数と等しい。 各プロセスは、スレッドの使用数によって、1 つ以上のタスクで表現される。 これは繰り返し表示されない。
-m
slabinfo を表示する。
-n
ヘッダの表示が一度だけになる。 デフォルトでは、一定の周期でヘッダが繰り返し表示される。
-s
種々のイベントカウンタとメモリの統計の表を表示する。 この表示は繰り返し表示されない。
delay
更新の間隔。単位は秒。 delay が指定されなければ、最後の起動以降の平均値が 1 回だけ報告される。
count
更新の回数。 count が指定されず、 delay が指定されている場合は、 count のデフォルトは無限回になる。
-d
ディスクの統計を表示する (2.5.70 以降が必要)。
-p
このオプションの後に指定したパーティション名に関する 詳細な統計を表示する (2.5.70 以降が必要)。
-S
このオプションの後に k, K, m, M を付けると、 出力を 1000, 1024, 1000000, 1048576 バイト単位に切り替える。
-V
バージョン情報を表示する。

VM モードにおけるフィールドの説明

Procs

b: 割り込み不可能なスリープ状態にあるプロセス数

Memory

swpd: 仮想メモリの量。
free: 空きメモリの量。
buff: バッファに用いられているメモリの量。
cache: キャッシュに用いられているメモリの量。
inact: アクティブでないメモリの量 (-a オプション)。
active: アクティブなメモリの量 (-a オプション)。

Swap

si: ディスクからスワップインされているメモリの量 (/s)。
so: ディスクにスワップしているメモリの量 (/s)。

IO

bi: ブロックデバイスから受け取ったブロック (blocks/s)。
bo: ブロックデバイスに送られたブロック (blocks/s)。

System

in: 一秒あたりの割り込み回数。クロック割り込みも含む。
cs: 一秒あたりのコンテキストスイッチの回数。

CPU

これらは CPU の総時間に対するパーセンテージである。
us: カーネルコード以外の実行に使用した時間 (ユーザー時間、nice 時間を含む)。
sy: カーネルコードの実行に使用した時間 (システム時間)。
id: アイドル時間。Linux 2.5.41 以前では、IO 待ち時間を含んでいる。
wa: IO 待ち時間。Linux 2.5.41 以前では、0 と表示される。

ディスクモードにおけるフィールドの説明

Reads

total: 成功した読み込みの総数
merged: グループ化された (結果として 1 つの I/O となった) 読み込みの数
sectors: 読み込みに成功したセクタ数
ms: 読み込みに使用した時間 (ミリ秒)

Writes

total: 成功した書き出しの総数
merged: グループ化された (結果として 1 つの I/O となった) 書き出しの数
sectors: 書き出しに成功したセクタ数
ms: 書き出しに使用した時間 (ミリ秒)

IO

cur: 実行中の I/O
s: I/O に使用した時間 (秒)

ディスクパーティションモードにおけるフィールドの説明

reads: このパーティションに発行された読み込みの総数
read sectors: このパーティションから読み込まれた総セクタ数
writes : このパーティションに発行された書き出しの総数
requested writes: このパーティションへの書き出し要求の総数

SLAB モードにおけるフィールドの説明

cache: キャッシュ名
num: 現在アクティブなオブジェクトの数
total: 利用可能なオブジェクトの総数
size: 各オブジェクトのサイズ
pages: 少なくとも 1 つのアクティブなオブジェクトがあるページの数
totpages: 確保 (allocate) された総ページ数
pslab: slab 当りのページ数
 

注意

vmstat には特別な権限は必要ない。
これらの報告は、システムのボトルネックを突き止める作業の 手助けをするものである。 Linux の vmstat は、自分自身は実行プロセスとしての勘定に入れない。
Linux のブロックは、今のところ全て 1024 バイトである。 古いカーネルはブロックが 512・2048・4096 バイトであると表示するかもしれない。
procps 3.1.9 以降では、vmstat はデフォルトモードにおいて 単位 (k, K, m, M) をユーザーに選択させる。 デフォルトは K (1024 バイト) である。
vmstat は slabinfo 1.1 を使用する。 間違えていたら修正して欲しい。

ファイル

/proc/meminfo
/proc/stat
/proc/*/stat
 

関連項目

iostat(1), sar(1), mpstat(1), ps(1), top(1), free(1)

バグ

デバイスごとのブロック io を表にしない。 またシステムコールの回数を数えない。

著者

Henry Ware <[email protected]> と
Fabian Frederick <[email protected]>
(diskstat, slab, partitions...) によって書かれた。

Recommended readings

Pages related to vmstat you should read also: