Solaris のシステム管理 (第 2 巻)

システムコールの統計情報をチェックする方法 (sar)

sar -c コマンドを使用すると、システムコールの統計情報が表示されます。

$ sar -c
00:00:01 scall/s sread/s swrit/s  fork/s  exec/s rchar/s wchar/s
01:00:01    2071     231     230    0.01    0.00  923483  923298

表 26-9 に、-c オプションでレポートされる次のシステムコールのカテゴリを示します。一般に、readswrites はシステムコール合計の約半分ですが、割合はシステムで実行中の動作によって大幅に変動します。

表 26-9 sar -c コマンドからの出力

フィールド名 

説明 

scall/s

1 秒当りのすべてのタイプのシステムコール数 (通常は、ビジーな 4 ないし 6 ユーザーのシステム上で 1 秒当り約 30) 

sread/s

1 秒当りの read システムコール数

swrit/s

1 秒当りの write システムコール数

fork/s

1 秒当りの fork システムコール数 (4 ないし 6 ユーザーのシステム上で毎秒約 0.5)。この数値は、シェルスクリプトの実行中は大きくなる

exec/d

1 秒当りの exec システムコール数。exec/sfork/s で割った値が 3 より大きい場合は、効率の悪い PATH 変数を調べる

rchar/s

read システムコールによって転送される 1 秒当りの文字 (バイト) 数

wchar/s

write システムコールによって転送される 1 秒当りの文字 (バイト) 数

例 - システムコールの統計情報をチェックする

次の例に、sar -c コマンドからの出力を示します。

$ sar -c
SunOS venus 5.7 Generic sun4m    06/17/98

00:00:01 scall/s sread/s swrit/s  fork/s  exec/s rchar/s wchar/s
01:00:01    2071     231     230    0.01    0.00  923483  923298
02:00:01    2071     231     230    0.01    0.00  923789  923603
03:00:00    2070     231     229    0.02    0.02  922355  922140
04:00:01    2073     231     230    0.01    0.00  924497  924312
05:00:01    2071     231     230    0.01    0.00  923577  923392
06:00:01    2071     231     230    0.01    0.00  923740  923554
07:00:01    2071     231     230    0.01    0.00  923545  923360
08:00:01    2074     231     230    0.01    0.00  924737  924552
08:20:01    2071     231     229    0.01    0.01  923096  922884
08:40:00    2071     231     230    0.00    0.00  923610  923438
09:00:01    2071     231     229    0.01    0.01  923343  923163
09:20:00     571      70      58    0.03    0.03  226013  218929
09:40:00     197      38      16    0.02    0.03   11321    3021
10:00:02     207      41      14    0.08    0.07   28534    5795
10:20:02     782     183      30    0.49    0.49  148126   14726

Average     1861     212     204    0.03    0.03    9691    3994