wa
(top
内)は、I/Oを待機する際のCPU時間を測定します。多くの記事はそれを言っています。
しかし、私は2つの知識ポイントに基づいて混乱しています:
正しい?
CPUがI/Oで待機する時間がないようです...どうなりますか?
さらに読むために私にいくつかの本や記事をお勧めするなら、そんなに良いです。
CPUアイドルステータスは、iowait
とidle
の2つの異なる「サブ」状態に分けられます。
CPUがアイドル状態の場合、カーネルは、そのCPUから開始されたローカルディスクまたはリモートマウントディスク(NFS)に対して現在進行中のI/Oが少なくとも1つあるかどうかを判断します。存在する場合、CPUはiowait
状態です。そのCPUから開始された進行中のI/Oがない場合、CPUはidle
状態です。
したがって、iowait
はCPUがアイドル状態である時間の割合です[〜#〜] and [〜#〜]そのCPUから開始された少なくとも1つのI/Oが進行中です。
iowait
カウンターは、システムがより多くの計算作業を処理できることを示しています。 CPUがiowait
状態にあるからといって、そのCPUで他のスレッドやプロセスを実行できないという意味ではありません。
したがって、iowait
は単なるアイドル時間の一種です。