一、程序檢視
靜態檢視命令:ps
ps aux <==檢視系統所有的程序資料
ps -la <==也是檢視所有系統的程序資料
ps axjf <==連同部分程序數狀態
引數:-a:所有的程序均顯示出來,與-e有相同的作用
-a:與terminal無關的所有程序
x:通常與a一起使用,可以列出較為完整的資訊
輸出格式:
l:較長、較詳細的將該pid的資訊列出
j:工作的格式
-f:做乙個更為完整的輸出
上圖中,列出程序的格式為:
f suid pi***id cprini addrsz wchantty timecmd
f:是程序標誌,表示該程序的許可權,若為4表示許可權為root,若為1表示該程序僅可複製,不能執行。
s:表示該程序的狀態,若為r表示正在執行,s表示睡眠,t表示停止,d不可喚醒的睡眠狀態,z表示殭屍狀態
列出系統的所有程序:
ps aux或
ps -la
殭屍程序:殭屍程序是指程序已經執行完畢,但是仍在記憶體中,一般是因為該程序的父程序無法將該程序結束掉。如果某個程序的cmd後面還跟著就表示該程序為殭屍程序。
top:動態地檢視程序狀態
top [-d 數字] :-d後跟秒數,表示程序介面多長時間更新一次,預設情況下更新時間為5s
top [-bnp]
-b:以批次的方式執行top命令
-n:與-b搭配,意義是需要進行幾次的top的輸出結果
-p:監測某個pid程序
top執行過程中可以使用的按鍵:
?:顯示在top當中可以輸入的按鍵
p(大寫):以cpu使用率排序顯示
m:以記憶體使用率排序顯示
n:以pid排序顯示
t:以該程序使用cpu的時間積累排序顯示
k:給予某個pid乙個訊號,殺掉
q:離開
我們用top命令檢視一下目前系統的程序狀態:
圖中需要注意的有:
第二行的zombie表示殭屍程序的數量,如果該值不是零就需要查詢哪個程序是殭屍程序;
第三行的%wa表示i/owait,系統變慢的原因往往都是i/o產生的問題;
第四行和第五行分別表示物理記憶體與虛擬記憶體(swap)的使用情況,swap的使用要盡量少,如果swap大量使用就表示物理記憶體不夠用。
下面的每個程序使用資源的情況中,pr表示priority,即優先順序,該值越小優先順序越高;ni表示nice,與pr有關,也是越小越先執行。
如果想儲存top的輸出資訊,使用top -b -n 2 > /tmp/top.txt就可以了。
pstree命令:檢視程序樹
pstree [-aupu]
-a:各程序樹之間以ascii字元來連線
-u:各程序樹之間以utf8字元來連線
-p:同時列出每個程序的pid
-u:同時列出每個程序的所屬賬號名稱
例:pstree -aup
從圖中可以看出,所有的程序都是依附在init這個程序下面的,觀察可發現該程序的程序號為1.它是linux主動呼叫的第乙個程序。其實該程序是乙個核心啟動的使用者級程序,核心自啟動之後第乙個執行的就是init程序。
linux核心(二) 程序管理之程序排程簡述
一 簡述 排程程式負責決定將哪個程序投入執行,何時執行以及執行多長時間,進度排程可看做在可執行程序之間分配有限的處理器時間資源的核心子系統。二 排程器介紹 1 排程器概念 排程器的乙個重要目標是有效的分配cpu時間片,同時提供很好的使用者體驗。排程器的一般原理是按需分配的計算能力,向系統中每個程序提...
Linux檢視程序and殺死程序
ps命令 顯示程序狀態 ps命令是 process status 的縮寫,ps命令用於顯示當前系統的程序狀態。可以搭配kill指令隨時中斷 刪除不必要的程式。語法格式 ps 引數 a 顯示現行終端機下的所有程式,包括其他使用者的程式 u 以使用者為主的格式來顯示程式狀況 x 顯示所有程式,不以終端機...
linux 程序檢視
一,top命令 顯示了當前正執行的程序以及關於它們的重要資訊,包括它們的記憶體和 cpu 用量。該列表既是真實時間的也是互動的。命令描述 q 退出 space 立即重新整理顯示 h 顯示幫助螢幕 k 殺死某程序。你會被提示輸入程序 id 以及要傳送給它的訊號。n 改變要顯示的程序數量。你會被提示輸入...