如何使CPU占用率为50%
在Linux下,CPU的状态分为系统态,用户态和空闲态,分别指系统内核执行时间,处于用户态的时间和空闲系统进程执行的时间。三者之和就是CPU的总时间。
CPU的利用率就是非空闲进程占用时间的比例。
100%:
1 #include <stdlib.h> 2 int main(){ 3 while(1){ 4 for(int i = 0 ;i<100;i++); 5 } 6 return 0; 7 }
50%:
1 #include <unistd.h> 2 #include <stdlib.h> 3 #include <stdio.h> 4 #include <time.h> 5 int main(){ 6 int time_start; 7 int fulltime = 100;//总时间 8 int runtime = 50;//运行时间 9 while(1){ 10 time_start = clock(); 11 while((clock()-time_start)<runtime){} 12 usleep(fulltime-runtime); 13 } 14 return 0; 15 }