user     system nice     idle       iowait   irq    softirq

cpu  17906755 86377  53312329 1322524322 29311124 101704 1096939
cpu0 4665564  22883  13417357 330376020  7206071  99986  297154
cpu1 4488897  20352  13351971 330749128  7202582  0      271926
cpu2 4434851  22675  13302518 330622140  7455115  1718   245786
cpu3 4317443  20467  13240483 330777034  7447356  0      282073
第一行是总的情况
第二行到第五行分别代表每个cpu的情况
 

对这个文件需要读取两遍,我们用total表示累计总资源,那么user+sys就是我们想要知道的累计CPU占用的资源。每个变量后面的数字表示它是第几次读文件得到的,用如下方法可算出CPU占用率:
Total_1=user_1+nice_1+sys_1+idle_1
Total_2=user_2+nice_2+sys_2+idle_2

Rate={[(user_2+sys_2)-(user_1+sys_1)]/(total_2-total_1)}*100

 

转自http://blog.sina.com.cn/s/blog_5546a5ad010007mq.html

Logo

更多推荐