- 論壇徽章:
- 0
|
目前要寫個監(jiān)控多個CPU使用率的腳本,我知道的有2中算法,不知道哪種才是正確或者準確的,請大家指教!
請大家看看我理解是否正確?
具體為:
1、我大概了解了下mpstat的源碼,自己覺得它是這樣實現的
讀/proc/stat里的信息,取出idle,然后有個時間間隔,再取一次,共取了2次。
例如:
第一次:idle1
間隔 5 秒
第二次: idle2
那么空閑率就是: (idle2-idle1)/5
結果:測試后發(fā)現自己腳本和mpstat差不多
2、還有一種,好像是top的算法,還不確定
讀取/proc/stat的信息,去各個cpu的之
1) 2.4.x
取出4個值:user、sys、nice、idle
第一次取: user1 sys1 nice1 idle1
間隔N秒
第二次取:user2 sys2 nice2 idle2
那么使用率為:
(1-(idle2-idle1)/((user2+sys2+nice2+idle2) - (user1+sys1+nice1+idle1)))*100%
2) 2.6.x 和2.4不一樣,去除7個值進行計算
結果:測試后發(fā)現和top相差不大
我正在疑惑中,請大家?guī)蛶兔,謝謝!
不知道哪種算法是正確或者更加精確的,請各位大師幫忙,再次謝謝了! |
|