VineLinuxパフォーマンスアッププロジェクト:0121
■仮想メモリ・CPU負荷率等を調べるには■
Linuxでは物理メモリ(マザーボードに挿してあるメモリ)の他に別途仮想メモリ(swap)と呼ばれるメモリが存在しています。このswapメモリの容量を調べたり、現在のCPU負荷率を調べたいときに便利なコマンドを紹介します。
上記のような情報を得るにはvmstatコマンドが便利です。vmstatコマンドはこの他にも動作中のプロセス情報やハードウェアデバイスの転送量なども得ることができます。
vmstatコマンドを実行すると以下のようなレイアウトで情報が表示されます。
[root@XXX root]$ vmstat
procs memory swap io system cpu
r b w swpd free buff cache si so bi bo in cs us sy id
1 5 0 936 13972 50104 156488 0 0 2 10 107 13 0 0 100
各項目にある英字の意味は以下の通りです(vmstatオンラインマニュアルより)。
r: 実行待ちのプロセス数
b: 割り込み不可能なスリープ状態にあるプロセス数
w: スワップアウトされているが、それを除いては実行可能なプロセス数。
swpd: 仮想メモリの量。
free: 空きメモリの量。
buff: バッファに用いられているメモリの量。
cache: キャッシュに用いられているメモリの量。
si: ディスクからスワップインされているメモリの量 (/s)。
so: ディスクにスワップしているメモリの量 (/s)。
bi: ブロックデバイスから受け取ったブロック (blocks/s)。
bo: ブロックデバイスに送られたブロック (blocks/s)。
in: 一秒あたりの割り込み回数。クロック割り込みも含む。
cs: 一秒あたりのコンテキストスイッチの回数。
us: カーネルコード以外の実行に使用した時間 (ユーザー時間、nice 時間を含む)。
sy: カーネルコードの実行に使用した時間 (システム時間)。
id: アイドル時間。Linux 2.5.41 以前では、IO 待ち時間を含んでいる。
特にCPUやメモリの状況を調べる方法はこの他にもさまざまありますので、一番使いやすい方法を探してみるのもおすすめです。