本文摘自PHP中文网,作者coldplay.xixi,侵删。
Linux中计算特定CPU使用率的方法:首先从【/proc/stat】中获取 t1时刻系统总体的值;然后从【/proc/stat】中获取t2时刻系统总的值;最后计算t2与t1之间系统总的CPU使用情况。
【相关学习推荐:linux视频教程】
Linux中计算特定CPU使用率的方法:
1. 背景知识
在/proc/stat中可以查看每一个CPU的使用情况的,如下图:
其中cpu(0/1/2/…)后面的那十个数字含义如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
|
2.计算具体CPU使用率
有了上面的背景知识,接下来我们就可以计算具体CPU的使用情况了。具体计算方式如下:
1 2 3 4 |
|
有了上面的计算公式,计算某一CPU使用率或者系统总的CPU占用率也就是不难了。
示例:计算系统整体CPU占用情况
首先从/proc/stat中获取 t1时刻系统总体的user、nice、system、idle、iowait、irq、softirq、steal、guest、guest_nice的值,得到此时Total CPU time since boot(记为total1)和 Total CPU idle time since boot(记为idle1)。
其次,从/proc/stat中获取t2时刻系统总的Total CPU time since boot(记为total2)和Total CPU idle time since boot(记为idle2)。(方法同上一步)
最后,计算t2与t1之间系统总的CPU使用情况。也就是:
1 |
|
其中, ((total2-total1)-(idle2-idle1))实际上就是t1与t2时刻之间系统CPU被占用的时间(总时间 - 空闲时间)。
下面是一段计算时间段内CPU被占用情况的脚本:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
|
以上就是Linux中如何计算特定CPU使用率的详细内容,更多文章请关注木庄网络博客!
相关阅读 >>
如何使用云服务器 ecs api 管理云上资源和开发应用程序
更多相关阅读请进入《Linux》频道 >>