linux c控制cpu利用率
来源:互联网 发布:超级软件txt下载 编辑:程序博客网 时间:2024/05/23 05:09
1、在x86体系结构中系统定时器的默认频率是100,即i386处理上的每秒钟时钟中断100次。所以在i386中每10ms产生一次时钟中断。
2、进程调度,可能是主动让出cpu,也可能是时钟中断中让出cpu。
3、控制cpu的利用率,实际上是控制cpu在totalTime时间内繁忙的时间busyTime。busyTime和totalTime的比值就是cpu的利用率。
4、查看cpu利用率的办法有很多中,比如在虚拟机文件系统proc下使用cat/proc/cpuinfo。不过使用这种办法得到的cpu利用率不是很清晰。可以使用top命令代替之。为了效果更加明显,可以将top的刷新时间间隔设置的小一点。如top -t 0.5//0.5秒刷新一次。
5、程序设计:usleep()函数可以使进程挂起,不占用cpu。假设此时主机上运行的进程占用cpu比较小,那么可以认为此时cpu为空闲状态。这样只需要控制进程运行的时间和usleep的时间即可以控制整个linux系统的cpu利用率。为了减少cpu调度产生的切换时间,我们使运行时间为系统一个时钟中断的时间,即设定总时间为100ms,运行时间为10ms,空闲时间为90ms。
程序代码如下:
#include
#include
#include
#define totalTime 100000 //totaltime is 100ms = 100000us
#define startTime 0
void main(){
while(1){
struct timeval tvpre, tvafter;
gettimeofday(&tvpre, NULL);
while(1){
gettimeofday(&tvafter, NULL);
int interval = tvafter.tv_usec - tvpre.tv_usec;//get theusec
while(interval < 0) {
interval += 1000000; //interval可能小于0,需要对interval取模。
}
if(interval >= totalTime/10) break;
}
usleep((totalTime*9)/10);
}
return ;
}
0 0
- linux c控制cpu利用率
- Linux如何控制 CPU 利用率
- linux下CPU利用率的控制
- 控制cpu的利用率
- linux下CPU利用率的控制(Python实现)
- LINUX CPU利用率计算
- linux系统CPU利用率
- linux下C语言实现求CPU利用率
- C#实时获取CPU利用率
- Linux 系统cpu利用率计算
- Linux 动态获取CPU利用率
- Linux查看多核CPU利用率
- Linux CPU负载利用率统计
- Linux下CPU的利用率
- Linux下CPU的利用率
- Linux系统中的CPU利用率
- 一种控制进程CPU利用率的方法
- 获取linux本机cpu利用率,内存利用率代码
- 计算机网络(一)
- textArea tag 标签内容限制最大长度js
- 广播,单播,组播
- 【PAT (Advanced Level)】1011. World Cup Betting (20)
- 关于使用UDP套接字进行本地进程间…
- linux c控制cpu利用率
- 20130704_TWNIC_Nagios_Ezilla_openSUSE12.2
- UBUNTU下使用ifconfig和route命令…
- 解决最优子结构问题的两种方法----…
- android自定义 dialog
- KMP算法的理解,伪代码,c代码实现
- static变量和extern变量
- 关于头文件,全局变量,extern,st…
- Android 更新UI的两种方法——handler和runOnUiThread()