當linux系統被某一個進程佔用時,它沒法處理其它進程的請求。餘下等待處理的請求必須等到CPU空閒。這個時候,系統會變得很慢。如下命令將可以幫助你識別CPU的利用率,從而解決與CPU相關的問題。
查明CPU利用率是一項重要的任務。linux系統附帶了報告CPU利用率的各類工具。利用這些工具,你將能夠查明:
*CPU利用率
*顯示每個CPU的利用率
*瞭解系統CPU的平均利用率
*直觀的找到哪一個進程正在吃CPU
#1:top
top程序提供了一個動態的、實時的、直觀的運行中的系統。它能顯示系統的主要信息,而且把由內核管理的任務列表顯示出來。top命令監控CPU利用率,進程狀態和內存利用率。頂部區域包含了整個系統狀態的信息,從左到右,從上到下,依次是:當前時間,正常運行時間,負載均衡,進程總數和概況,CPU狀態,內存佔用狀況,swap佔用狀況。linux
輸入:top負載均衡
輸出:工具
從CPU狀態那一行,能夠很清楚地掌握CPU利用率:用戶模式(us),系統模式(sy),低優先級用戶模式(ni),空閒任務(id),I/O等待中(wa)。top命令還能夠詳細列出每個進程佔用了多少CPU和多少內存。spa
#2:mpstat
mpstat命令會把每個可用的處理器都寫入標準輸出中,第一個處理器編號爲0,同時對全部處理器的所有平均值作一次報告。默認狀況下,只會輸出所有平均值。要查看每個CPU的狀況,須要增長參數。進程
輸入:mpstat內存
輸出:get
輸入:mpstat -P ALLit
輸出:監控
#3:sar
使用sar命令能夠收集,報告和保存系統活動信息。sar命令會把當天的CPU活動狀況所有寫入標準輸出中。默認記錄間隔時間是10分鐘,你也能夠添加參數來指定sar須要收集數據。請求
輸入:sar
輸出:
#4:ps
ps是一條功能很是全面的命令。經過使用ps命令,能夠很清楚的看出究竟是哪一條進程在吃CPU。排在前面的佔用的CPU越多
輸入:ps -eo pcpu,pid,user,args | sort -k 1 -r | head -16
輸出:
#5:gnome-system-monitor
若是計算機上裝有linux桌面系統,即可以使用圖形界面的系統監視器。從系統監視器中,能夠很直觀地看到進程的狀態、佔用的CPU和內存等等信息。