下面是内存溢出 jb51.cc 通过网络收集整理的代码片段。
内存溢出小编现在分享给大家,也给大家做个参考。
//gino//20150712#include <stdio.h>#include <string.h>int main(){ int m_user,m_nice,m_system,m_IDle,m_iowait,m_irq,m_softirq,m_stealstolen,m_guest; char buff[128]={''}; char m_cpu[5]; int all_1,all_2,IDle_1,IDle_2; file *fp = fopen("/proc/stat","r"); fgets(buff,128,fp); sscanf(buff,"%s%d%d%d%d%d%d%d%d%d",\ m_cpu,&m_user,&m_nice,&m_system,&m_IDle,&m_iowait,\ &m_irq,&m_softirq,&m_stealstolen,&m_guest); all_1 = m_user + m_nice + m_system + m_IDle + m_iowait + \ m_irq + m_softirq + m_stealstolen + m_guest; IDle_1 = m_IDle; int m_cpu_1 = m_user + m_nice + m_system; rewind(fp); sleep(1); bzero(buff,128); fgets(buff,&m_guest); all_2 = m_user + m_nice + m_system + m_IDle + m_iowait + \ m_irq + m_softirq + m_stealstolen + m_guest; IDle_2 = m_IDle; int m_cpu_2 = m_user + m_nice + m_system; /*cpu 总使用率计算公式 cpu_use_rate = 100 * [(taotal_2 - taotal_1) - (IDle_2 - IDle_1)] / (cpu_2 - cpu_1) */ float cpu_use_rate = 100*( (float)(all_2 - all_1) - (float)(IDle_2 - IDle_1)) / (float)(all_2 - all_1); printf("%04.2f%%\n",cpu_use_rate); /* cpu 总使用率计算公式 [(user_2 +sys_2+nice_2) - (user_1 + sys_1+nice_1)]/(total_2 - total_1)*100 */ cpu_use_rate = (float)(m_cpu_2 - m_cpu_1) / (float)(all_2 - all_1) * 100; printf("%04.2f%%\n",cpu_use_rate); /* cpu 未使用率计算公式 (IDle2-IDle1)/(cpu2-cpu1)*100 */ cpu_use_rate = ( (float)(IDle_2 - IDle_1)) / (float)(all_2 - all_1) *100; printf("%04.2f%%\n",cpu_use_rate); return 0;}
以上是内存溢出(jb51.cc)为你收集整理的全部代码内容,希望文章能够帮你解决所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
总结以上是内存溢出为你收集整理的通过/proc/stat文件计算CPU的利用率全部内容,希望文章能够帮你解决通过/proc/stat文件计算CPU的利用率所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)