新聞中心
雖然cgroup管控了該cgroup下所有進(jìn)程的CPU使用情況,但從操作系統(tǒng)的角度上,不論進(jìn)程是否隸屬于某個(gè)子cgroup下,仍然是共用宿主機(jī)的CPU。所以監(jiān)控宿主機(jī)上該進(jìn)程的CPU就能得到進(jìn)程的CPU監(jiān)控指標(biāo)。
Linux上常用的CPU監(jiān)控命令是top。top對(duì)CPU監(jiān)控的原理是在time1時(shí)刻獲取CPU從啟動(dòng)時(shí)的累計(jì)總時(shí)間countAll1和busy總時(shí)間countBusy1,再到time2時(shí)刻獲取CPU總時(shí)間countAll2和busy總時(shí)間countBusy2,最后用busy的時(shí)間差值減去總時(shí)間的差值得到了在time1到time2這個(gè)時(shí)間段內(nèi)機(jī)器CPU的占用情況。也就是:
CPU占用率(%) = (countBusy2 - countBusy1)/(countAll2 - countAll1) 100進(jìn)程同理,在兩個(gè)時(shí)刻分別得到每個(gè)進(jìn)程的busy總時(shí)間countProcBusy1和countProcBusy2,則得到進(jìn)程CPU占用率:
進(jìn)程CPU占用率(%) = (countProcBusy2 - countProcBusy1)/(countProcAll2 - countProcAll1)100第一行是總的CPU使用情況,具體參數(shù)的意思:
所以,選擇當(dāng)前為time1,3秒后為time2,countAll = user + nice + system + idle + iowait + irq + softirq + stealstolean + guest + guest_nice。countBusy為countAll減去idle的值,這樣上面第一個(gè)公式的所有需要的值就齊了,可以直接計(jì)算。
第二行、第三行是每個(gè)邏輯CPU的使用情況,這里記下有兩個(gè)邏輯CPU,CPU的邏輯核數(shù)與CPU顯示模式irix和solaris有關(guān)。
創(chuàng)新互聯(lián)建站是一家專業(yè)的成都網(wǎng)站建設(shè)公司,我們專注網(wǎng)站制作、網(wǎng)站設(shè)計(jì)、網(wǎng)絡(luò)營(yíng)銷、企業(yè)網(wǎng)站建設(shè),友情鏈接,一元廣告為企業(yè)客戶提供一站式建站解決方案,能帶給客戶新的互聯(lián)網(wǎng)理念。從網(wǎng)站結(jié)構(gòu)的規(guī)劃UI設(shè)計(jì)到用戶體驗(yàn)提高,創(chuàng)新互聯(lián)力求做到盡善盡美。
分享標(biāo)題:怎么查看linux的CPU使用情況
網(wǎng)頁(yè)鏈接:http://fisionsoft.com.cn/article/jdchce.html