ホームページ  >  記事  >  システムチュートリアル  >  Linuxでの具体的なCPU使用率を計算する場合の詳細説明

Linuxでの具体的なCPU使用率を計算する場合の詳細説明

PHPz
PHPz転載
2023-12-22 10:34:111131ブラウズ

Linux での特定の CPU 使用率の計算要件ソリューション拡張リファレンス

###必要###

Linux では、top コマンドを使用して、特定のプロセスが占有している CPU を確認したり、特定の CPU の使用状況を確認したりできます (最初に top コマンドを使用し、次に数字の「1」キーを押すと、使用状況が表示されます)各 CPU)、以下に示すように:

Linuxでの具体的なCPU使用率を計算する場合の詳細説明そして、私たちの要件は次のとおりです:

CPU 占有率を取得するにはどうすればよいですか?

###解決###

1. 背景知識

以下に示すように、/proc/stat で各 CPU の使用状況を確認できます。

cpu の後の 10 個の数字 (0/1/2/…) の意味は次のとおりです。

リーリー

Linuxでの具体的なCPU使用率を計算する場合の詳細説明2.特定の CPU 使用率を計算する

上記の背景知識を踏まえて、具体的な CPU 使用率を計算できます。具体的な計算方法は以下の通りです。 リーリー

上記の計算式を使用すると、特定の CPU 使用率またはシステムの合計 CPU 使用率を計算することは難しくありません。 例: システム全体の CPU 使用率を計算します まず、

t1

におけるシステム全体の user、nice、system、idle、iowait、irq、softirq、steel、guest、guest_nice の値を /proc/stat から取得し、合計 CPU 時間を取得します。ブート以降 (total1 として示されます) およびブート以降の合計 CPU アイドル時間 (idle1 として示されます)。

次に、時刻

t2
におけるシステムのブート後の合計 CPU 時間 (total2 として記録) とブート後の合計 CPU アイドル時間 (idle2 として記録) を /proc/stat から取得します。 (方法は前と同じです)
最後に、t2 から
t1 までのシステムの合計 CPU 使用率を計算します。あれは: ### t1 と t2 の間の CPU パーセンテージ = ((total2-total1)-(idle2-idle1))/(total2-total1)* 100%
このうち、((total2-total1)-(idle2-idle1)) は、実際には t1 と t2 の間にシステム CPU が占有されていた時間 (合計時間 - アイドル時間) です。 以下は、一定期間内の CPU 使用率を計算するスクリプトです: リーリー ###拡大する### カーネルでは、/proc/stat 内のファイルの実装関数は次のとおりです。
リーリー ###参照する### http://man7.org/linux/man-pages/man5/proc.5.html

https://www.php.cn/link/f45cc474bff52cb1b2268a2f94a2abcf

https://www.php.cn/link/73d02e4344f71a0b0d51a925246990e7

以上がLinuxでの具体的なCPU使用率を計算する場合の詳細説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はjb51.netで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。