歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Unix知識 >> Unix教程 >> 進程管理的兩個命令(PS,Sar)

進程管理的兩個命令(PS,Sar)

日期:2017/2/27 17:41:31   编辑:Unix教程
常用的幾個命令主要有:
一、 PS
我們可以用ps 的 – l 選項,得到更詳細的進程信息.
 F(Flag):一系列數字的和,表示進程的當前狀態。這些數字的含義為:
00:若單獨顯示,表示此進程已被終止。
  01:進程是核心進程的一部分,常駐於系統主存。如:   
    sched、 vhand 、bdflush 等。
02:Parent is tracing process.
  04 :Tracing parent's signal has stopped the process; the parent is waiting ( ptrace(S)).
  10:進程在優先級低於或等於25時,進入休眠狀態,而且不能用信號喚醒,例如在等待一個inode被創建時   
   20:進程被裝入主存(primary memory)
   40:進程被鎖在主存,在事務完成前不能被置換   e
 S(state of the process )
O:進程正在處理器運行 
  S:休眠狀態(sleeping)
R:等待運行(runable)   
I:空閒狀態(idle)
  Z:僵屍狀態(zombie)   
  T:跟蹤狀態(Traced)
B:進程正在等待更多的內存頁
 C(cpu usage):cpu利用率的估算值 
二、 Sar:統計單CPU系統的系統活動情況
Cpusar:多處理器系統中單個處理器的活動情況
Mpsar:多處理器系統中處理器的總體活動情況
 Sar -u:檢查是否有逃逸進程大量占用CPU
此命令的顯示有四個字段,含義如下:
%usr:執行用戶進程的時間
%sys:執行系統進程的時間
%wio:等待完成I/O的時間
%idle:空閒時間
顯示結果分析說明:
1) 一般情況下,%usr與%sys的值基本相等
2) 在一般的多用戶系統中,%idle通常大於40%
3) 若%wio經常>15%,意味著硬盤有可能會造成瓶頸
4) 若%idle經常小於30%,意味著處理器能力較弱
5) 若%idle經常小於10%,表明處理器負擔過重,或者存在逃逸進程
6) 若%idle接近於0,並且%sys又遠遠高於%usr,則可能是因為內存短缺引起了大量的swapping和paging
 Sar -p:檢查系統中是否有過多的等待進程
此命令有四個相關字段:
runq-sz:內存(memory)中可以運行的進程數
%runocc:進程進入內存等待的概率
swpq-sz:對換區(swap)中等待運行的進程數
%swpocc:進程進入swap等待的概率
顯示結果分析匯總如下:
1) 若runq-sz經常大於2並且%runocc經常大於90%,意味著處理器負載過重
2) 若%swpocc不為0,表示系統已經置換出了進程。可以采用增加內存或減少緩沖的方法來減少swap和paging。
 自動統計程序:
對系統運行狀況的判斷不能依賴於某個特定時期的數據,它需要一個長期的積累和收集的過程。Unix5提供了兩個基於月的自動統計程序sa1(以二進制形式收集、存放於目錄/usr/adm/sa中,以sadd為文件名,dd是一個數字,表示當月第幾天)、sa2(以可讀文本形式存放在目錄/usr/adm/sa中,文件名為:sardd)。這兩個命令可以通過crontab啟動。相關文件位於/usr/spool/cron/crontabs下sys和 root。
 激活自動記錄:
/usr/lib/sa/sar_enable -y
 顯示記錄內容:
sar –q -f /usr/adm/sa/sa10
Copyright © Linux教程網 All Rights Reserved