控制CPU使用率

2021-07-04 17:38:54 字數 1284 閱讀 4347

我使用的是ubuntu 14.04版本,用的是自帶的系統監視器來觀察cpu使用率的變化。

1.首先來說說怎麼控制cpu使用率,當程式執行乙個死迴圈的時候,使用率就會變成100%,而當程式進入idle的時候,使用率就會很低(在別的程式不啟動的情況下),那麼控制cpu使用率就是調整它idle和busy的時間比例。

2.cpu使用率設為任意值(0 ~ 1之間)

**如下

//#define _gnu_source

#include

#include

#include

#include

#include

int idletime;

double busytime = 0.01;

void setcpu(int id)

}int main(int argc, char

const *argv)

return

0;}

效果圖:

3.cpu使用率為正弦曲線

由於2中已經做到了把cpu使用率設為任意值,所以做成乙個函式影象也比較簡單,**如下:

//#define _gnu_source

#include

#include

#include

#include

#include

#include

#define pi 3.14159265

#define valuesize 3600

const

double slicetime = 0.02;

void setcpu(int id)

}int main(int argc, char

const *argv)

//infinite loop

for (int j = 0; ; j = (j + 1) % valuesize)

return

0;}

效果圖:

C語言控制cpu使用率

今天看到一本講演算法的好書,叫程式設計之美 看了一節,裡面講的是控制cpu 的占有率,cpu的占有率是由程序的忙和空閒來決定的,即 rate busy time busy time idle time 怎麼來控制她呢?busy可以用迴圈 這個迴圈用空迴圈,以便好控制 idle可以用sleep 比如先...

cpu使用率統計

cat proc stat得到 user nice system idle iowait irq softirq stealstolen guest 的9元組 再採兩個夠短的時間點,做差計算即可 cat proc pid stat讀取到 pid 6873 程序號utime 1587 該任務在使用者態...

檢視CPU使用率

rem 如果wmi服務 服務名為winmgmt 壞掉了,需要到system32 webm目錄下執行如下注釋的命令 remfor i in dll do regsvr32 s i remregsvr32 s scrcons.exe remrem regsvr32 s wbemtest.exe remr...