1. 基本介紹
- 在 LINUX 中,每個執行的程序都稱為一個進程。每一個進程都分配一個 ID 號(pid,進程號)。=>windows => linux
- 每個進程都可能以兩種方式存在的。前台與后台,所謂前台進程就是用戶目前的屏幕上可以進行操作的。后台進程則是實際在操作,但由於屏幕上無法看到的進程,通常使用后台方式執行。
- 一般系統的服務都是以后台進程的方式存在,而且都會常駐在系統中。直到關機才才結束。
- 示意圖

- 程序運行的時候會加載到內存中就是進程

2. 顯示系統執行的進程
- 基本介紹
ps命令是用來查看目前系統中,有哪些正在執行,以及它們執行的狀況。可以不加任何參數.


3. ps 詳解
-
指令:
ps –aux|grep xxx,比如看看有沒有sshd服務

-
指令說明
- USER:用戶名稱
- PID:進程號
- %CPU:進程占用 CPU 的百分比
- %MEM:進程占用物理內存的百分比
- VSZ:進程占用的虛擬內存大小(單位:KB)
- RSS:進程占用的物理內存大小(單位:KB)
- TT:終端名稱,縮寫 .
- STAT:進程狀態,其中
S(Sleep)-睡眠,s-表示該進程是會話的先導進程,N-表示進程擁有比普通優先級更低的優先級,R(Run)- 正在運行,D-短期等待,Z-僵死進程,T-被跟蹤或者被停止等等 - STARTED:進程的啟動時間
- TIME:CPU 時間,即進程使用 CPU 的總時間
- COMMAND:啟動進程所用的命令和參數,如果過長會被截斷顯示
- 分頁查看進程:
ps -aux | more,q退出查看
4. 應用實例
- 要求:以全格式顯示當前所有的進程,查看進程的父進程。 查看
sshd的父進程信息 - ps -ef 是以全格式顯示當前所有的進程
- -e 顯示所有進程。-f 全格式
ps -ef|grep sshd

找到父進程,PPID(父進程)為0表示是類似於根進程



- UID:用戶 ID
- PID:進程 ID
- PPID:父進程 ID
- C:CPU 用於計算執行優先級的因子。數值越大,表明進程是 CPU 密集型運算,執行優先級會降低;數值越小,表明進程是 I/O 密集型運算,執行優先級會提高
- STIME:進程啟動的時間
- TTY:完整的終端名稱
- TIME:CPU 時間
- CMD:啟動進程所用的命令和參數
