ファイルシステム操作の CPU 使用量は上部に表示されません。

ファイルシステム操作の CPU 使用量は上部に表示されません。

lsUbuntu Linux端末で次のコマンドを実行(10,000回)し、それを使用してtopCPU使用率を監視しました。top合計CPU使用率(ライン2)は約48%(ユーザー13.1%+コア34.9%)で示されていますが、下のリストには正しいCPU使用率は反映されません。 CPUの6.5%だけがbashプロセスに関連しています。注:Irixモードをオフにしたので、6.5%は行2と同じです。

for i in {1..10000}; do (ls /tmp/ >/dev/null); done

トップスクリーンショット

また、「カーネルスレッドを隠す」オプションを選択解除してみましたが、htop同じ結果が得られました。

システムのどの部分がCPU(コア?)を使用しており、なぜtop/ hiddenですかhtop

ベストアンサー1

ライフサイクルが非常に短い多くのプロセスを実行しています。トップレベルの出力では、それらの多くを見ることはできません。

Topは、定期的な間隔(通常1秒あたり1回)でシステム活動を測定します。更新するたびに、プロセスのリストを調べて、各プロセスの統計を収集します。スケジューラの運用によっては、lsこの時点でプロセスが 0 個または 1 個ある場合があります。プロセスがtop表示されない場合は表示されlsません。topプロセスが表示されても統計を取得するのは原子的ではありません。プロセスが列挙される時間とプロセスの統計を読み取る時間の間にlsプロセスが終了した場合、プロセスは表示されません。topしたがって、一般的にリストするプロセスはありませんls

プロセスがあっても、lsプロセスは長時間実行されないため、最後の瞬間に占めるCPU使用率は無視できます。おそらくリストの一番下のどこかにあります。

CPU使用量は自動的に測定されず、近似値にすぎないため、カーネルから収集されたCPU使用量統計の合計が、プロセスごとに収集された使用量統計の合計と常に一致するわけではありません。これらの合計は十分に長く実行されているプロセスと一致しますが、この例に示すように、寿命の短いプロセスがある場合は大きく異なる場合があります。

おすすめ記事