![CPU使用量:ユーザー、システム、アイドル状態を合計すると、常に100%になりますか? [閉鎖]](https://linux33.com/image/135279/CPU%E4%BD%BF%E7%94%A8%E9%87%8F%EF%BC%9A%E3%83%A6%E3%83%BC%E3%82%B6%E3%83%BC%E3%80%81%E3%82%B7%E3%82%B9%E3%83%86%E3%83%A0%E3%80%81%E3%82%A2%E3%82%A4%E3%83%89%E3%83%AB%E7%8A%B6%E6%85%8B%E3%82%92%E5%90%88%E8%A8%88%E3%81%99%E3%82%8B%E3%81%A8%E3%80%81%E5%B8%B8%E3%81%AB100%EF%BC%85%E3%81%AB%E3%81%AA%E3%82%8A%E3%81%BE%E3%81%99%E3%81%8B%EF%BC%9F%20%5B%E9%96%89%E9%8E%96%5D.png)
https://www.opsdash.com/blog/cpu-usage-linux.html
CPU使用量のコンポーネント
では、「作業の種類」とは何ですか?最も確実なのは「ユーザー」と「システム」です。
システム:CPUがカーネルコードを実行しています。これには、デバイスドライバとカーネルモジュールが含まれます。
ユーザー:CPUがユーザーモードでコードを実行しています。これにはアプリケーションコードが含まれます。アプリケーションがディスクから読み取ったりネットワークに書き込もうとすると、カーネルはその操作中に実際にスリープ状態になり、アプリケーションを再起動します。
アイドル:カーネルが実際にやるべきことがなければ、この時間は無駄になります。技術的には、実行可能キューが空で進行中のI / O操作がない場合、CPU使用率はアイドル状態で表示されます。
ユーザー、システム、アイドル率の合計が常に100%であることを正しく理解していますか?
答え1
可能な状態は、オペレーティングシステム(LinuxまたはUnix、バリアント、およびバージョン)によって異なります。
可能なすべての状態値の合計は100%です。そう計算されるからです。
ユーザー、システム、アイドルなどの主な状態に加えて、注目すべき1つの状態は、その状態のレベルが重要である可能性があることです。盗むここで、CPUは、同じハードウェアで実行されている別の仮想マシンで使用されます。他の状態は、特定のI / Oが完了(待機)されるのを待つのと、ソフトウェアとハードウェアの割り込みを待つことです。
答え2
実はそうではありません。異なるタイプのCPU使用率があります。実行すると、sar -u ALL
CPU使用量を確認できます。
00:00:01 CPU %usr %nice %sys %iowait %steal %irq %soft %guest %idle
00:10:01 all 89.42 0.00 0.28 0.00 0.00 0.00 0.02 0.00 10.28
著者が指摘したように、ユーザー空間プログラム(%usr)、素晴らしいプロセス時間(%usr)(どのように計算されるかわからない)、カーネル空間プログラム(%sys)、待ち時間I /を含む他の種類のCPU使用率あります。 O(ディスク)(%iowait)、1つのCPUからサイクルを盗むのに費やされた時間(%steal)、および割り込み要求(%irq、%soft)。 CPUがこれらの操作を実行しない場合は、アイドル(%idle)と見なされます。これらの合計は常に100%でなければなりません。