1.ps命令:提供最近進程的快照。顯示當前活躍進程的簡要信息。
常見使用:
(1)與grep命令配合查找是否有相應進程存活
ps -ef | grep mysql
-e:顯示全部進程(與-A參數效果相同)
-f:按指定格式顯示(效果可參見圖1.1和圖1.2的對比)
圖1.1
圖1.2
(2)ps -aux:顯示所有包含其他使用者的行程
2.top命令:顯示linux進程,動態且實時顯示系統進程的簡要信息; 並提供簡單的用戶交互。
備注:按q鍵可退出top命令顯示界面。
常見使用:
直接執行top命令,按下“M”鍵指定進程列表按占用內存大小由高到低排序 ,來查看內存占用最大的進程。
按下“P”鍵指定進程列表按占用CPU大小由高到低排序 ,來查看CPU占用最大的進程。
詳細釋義:
直接執行top命令,顯示信息圖1:
圖1 top命令顯示信息
圖1中,top命令顯示的信息可以分為統計信息區(前5行)和進程信息區(第六行往后)。
(1)統計信息區各行含義見表1:
行號 | 含義 | 各列含義 | 備注 |
1 | 任務隊列信息 | (1)當前時間 (2)開機到目前為止所經過的時間 (3)當前登錄用戶數 (4)系統負載,即任務隊列的平均長度。三個數值分別為1分鍾、5分鍾、15分鍾前到現在的平均值 |
同uptime顯示信息相同 |
2 | 進程信息 | (1)進程總數 (2)運行進程數 (3)睡眠進程數 (4)停止晉城市 (5)僵屍進程數 | |
3 | CPU信息 | (1)用戶空間占用CPU百分比 (2)內核空間占用CPU百分比 (3) 用戶進程空間內改變過優先級的進程占用CPU百分比 (4)空閑CPU百分比 (5)等待輸入輸出(IO)的CPU時間百分比 (6)cpu處理硬件中斷的時間 (7)cpu處理軟中斷的時間 (8)實時 |
當有多個CPU時,這些內容可能會超過兩行 |
4 | 內存信息 | (1)物理內存總量 (2)空閑內存總量 (3)使用的物理內存總量 (4)用作內核緩存的內存量 | |
5 | SWAP信息 | (1)交換區總量 (2)空閑交換區總量 (3)使用的虛擬內存總量 (4)緩沖的交換區總量 |
表1 統計信息區含義
(2)進程信息區:
備注:進程信息區默認顯示12列,但是top命令可支持顯示的信息列數遠不止12列。(見圖2)
進程信息區可以提供基本的交互功能,包括:
(1)按”M”鍵可以按內存用量進行排序;
(2) 按”P”鍵可以按CPU使用量進行排序;
(3)按 ”z”鍵可以使用彩色顯示
(4)按“f”鍵可以進入交互頁面,選擇指定的列顯示(按d或者空格選中要顯示的信息列,按q或者esc退出選擇頁面,重新進入top命令顯示界面);
(5) 按”r”鍵可以改變一個進程的nice值;
(6)按”k”鍵可以向一個進程發信號;
按下“f”鍵可查看top命令支持顯示的所有信息,如圖2:
圖2 top命令可顯示的信息匯總
各列的含義如下:
序號 列名 含義
a PID 進程id
b PPID 父進程id
c RUSER Real user name
d UID 進程所有者的用戶id
e USER 進程所有者的用戶名
f GROUP 進程所有者的組名
g TTY 啟動進程的終端名。不是從終端啟動的進程則顯示為 ?
h PR 優先級
i NI nice值。負值表示高優先級,正值表示低優先級
j P 最后使用的CPU,僅在多CPU環境下有意義
k %CPU 上次更新到現在的CPU時間占用百分比
l TIME 進程使用的CPU時間總計,單位秒
m TIME+ 進程使用的CPU時間總計,單位1/100秒
n %MEM 進程使用的物理內存百分比
o VIRT 進程使用的虛擬內存總量,單位kb。VIRT=SWAP+RES
p SWAP 進程使用的虛擬內存中,被換出的大小,單位kb。
q RES 進程使用的、未被換出的物理內存大小,單位kb。RES=CODE+DATA
r CODE 可執行代碼占用的物理內存大小,單位kb
s DATA 可執行代碼以外的部分(數據段+棧)占用的物理內存大小,單位kb
t SHR 共享內存大小,單位kb
u nFLT 頁面錯誤次數
v nDRT 最后一次寫入到現在,被修改過的頁面數。
w S 進程狀態。
x COMMAND 命令名/命令行
y WCHAN 若該進程在睡眠,則顯示睡眠中的系統函數名
z Flags 任務標志,參考 sched.h
D=不可中斷的睡眠狀態
R=運行
S=睡眠
T=跟蹤/停止
Z=僵屍進程
(top命令說明參考:https://www.cnblogs.com/lele/articles/3558002.html)