下面是编程之家 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]={'\0'}; 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)为你收集整理的全部代码内容,希望文章能够帮你解决所遇到的程序开发问题。
如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。