- PR -

vmstatとsarについて

投稿者投稿内容
angel
ぬし
会議室デビュー日: 2005/03/17
投稿数: 711
投稿日時: 2005-04-21 23:55
あら、Linux 限定の話では無かったのですね。
Linux の kernel って、I/O-wait に相当する情報出してたっけ…、と思ったので「正直分かりかねる」という感想になっていました。

一般論的に言えば、I/O-wait は CPU 使用率には含めませんよね。CPU を使いたくても、I/O 処理の完了を待っていて使えない、という状態でカウントされる数値ですから。

…で、各OSで汎用的に処理するですか。難しいですね。
vmstat でやるなら、ヘッダ部分から項目を読み取って、user, system, nice, I/O wait, idle の表示位置を把握する、という方法はありそうに思いますが…。
(ヘッダ名はどのプラットフォームでも同じ!! という決め打ちが必要です)

以上、ご参考まで。
ぽんす
ぬし
会議室デビュー日: 2003/05/21
投稿数: 1023
投稿日時: 2005-04-22 12:38
Linuxのカーネルソースを眺めてみました。
プロセスの状態遷移を使って数えているのかと思ってましたが、
実際にはディスクI/Oの処理をする際にスケジューラを呼ぶ前後で
値を操作しておいてその値を使って I/O wait であるかどうか
判定していますね。にゃるほど。
SUNNYDAY
常連さん
会議室デビュー日: 2004/07/14
投稿数: 49
投稿日時: 2005-04-25 13:34
ぽんすさん、angelさん
またまた返信ありがとうございました。
私の返信が遅くなってしまい、すみません。

そうなんです、OSはLinux限定ではなく、
Solaris、AIX、HP-UXに対応しなければいのです。。。
とりあえず、CPU使用率としては、usrとsysの値を足したものとする!
ということで、上司の了承を得たため、
awk等を使って色々やってみようと思います。
数々のアドバイスありがとうございました。
勉強になりました。

スキルアップ/キャリアアップ(JOB@IT)