Linux進程管理命令詳解(ps和top)
1.ps命令
作用:ps命令主要查看系統中進程的狀態。
格式:ps [選項]
主要選項如下。
以下是引用片段:說明:要對進程進行監測和控制,首先要了解當前進程的情況,也就是需要查看當前進程。ps命令就是最基本、也是非常強大的進程查看命令。根據顯示的信息可以確定哪個進程正在運行、哪個進程被掛起、進程已運行了多久、進程正在使用的資源、進程的相對優先級,以及進程的標志號(PID)。所有這些信息對用戶都很有用,對於系統管理員來說更為重要。使用”ps -aux”命令可以獲得終端上所有用戶的有關進程的所有信息,下面結合圖講解進程的基本信息。
圖中第二行代碼中,USER表示啟動進程用戶。PID表示進程標志號。%CPU表示運行該進程占用CPU的時間與該進程總的運行時間的比例。%MEM表示該進程占用內存和總內存的比例。VSZ表示占用的虛擬內存大小,以KB為單位。RSS為進程占用的物理內存值,以KB為單位。TTY表示該進程建立時所對應的終端,”?”表示該進程不占用終端。STAT表示進程的運行狀態,包括以下幾種代碼:D,不可中斷的睡眠;R,就緒(在可運行隊列中);S,睡眠;T,被跟蹤或停止;Z,終止(僵死)的進程,Z不存在,但暫時無法消除;W,沒有足夠的內存分頁可分配;<高優先序的進程;N,低優先序的進程;L,有內存分頁分配並鎖在內存體內(實時系統或I/O)。START為進程開始時間。TIME為執行的時間。COMMAND是對應的命令名。
應用實例如下。
在進行系統維護時,如果CPU負載突然增加,而又不知道是哪一個進程造成的情況。使用命令:
以下是代碼片段:因為%CPU選項在第三列,所以sort選3作為參數,+表示升序輸出結果。
2.top命令
top命令用來顯示系統當前的進程狀況。
格式:top [選項]
主要選項如下。
以下是引用片段:說明:top命令和ps命令的基本作用是相同的,都顯示系統當前的進程狀況。但是top是一個動態顯示過程,即可以通過用戶按鍵來不斷刷新當前狀態。這裡結合圖來說明它給出的信息。
在圖中,第一行表示的項目依次為當前時間、系統啟動時間、當前系統登錄用戶數目、平均負載。第二行顯示的是所有啟動的、目前運行的、掛起(Sleeping)的和無用(Zombie)的進程。第三行顯示的是目前CPU的使用情況,包括系統占用的比例、用戶使用比例、閒置(Idle)比例。第四行顯示物理內存的使用情況,包括總的可以使用的內存、已用內存、空閒內存、緩沖區占用的內存。第五行顯示交換分區的使用情況,包括總的交換分區、使用的、空閒的和用於高速緩存的交換分區。第六行顯示的項目最多,下面列出了詳細解釋。
PID(Process ID):進程標志號,是非零正整數。USER:進程所有者的用戶名。PR:進程的優先級別。NI:進程的優先級別數值。VIRT:進程占用的虛擬內存值。RES:進程占用的物理內存值。SHR:進程使用的共享內存值。STAT:進程的狀態,其中S表示休眠,R表示正在運行,Z表示僵死狀態,N表示該進程優先值是負數。%CPU:該進程占用的CPU使用率。%MEM:該進程占用的物理內存和總內存的百分比。TIME:該進程啟動後占用的總的CPU時間。COMMAND:進程啟動的啟動命令名稱,如果這一行顯示不下,進程會有一個完整的命令行。top命令使用過程中,還可以使用一些交互的命令來完成其他參數的功能。這些命令是通過快捷鍵啟動的。
以下是引用片段: 空格:立刻刷新。 P:根據CPU使用大小進行排序。 T:根據時間、累計時間排序。 q:退出top命令。 m:切換顯示內存信息。 t:切換顯示 以下是引用片段: