1.進程簡介
- 與windows中相同的是,在linux中程序的一次執行就是一個進程,所以即便是一個程序的一個服務被執行,系統也默認爲一個進程執行
2.進程相關常用命令
1)ps命令
- 用以顯示進程的狀態(非實時)
- 語法格式:ps [options]
- 常用的參數列表
命令 | 功能 |
---|---|
ps -A | 列出所有的進程 |
ps -w | 顯示加寬可以顯示較多的諮詢 |
ps -au | 顯示較詳細的諮詢 |
ps -aux | 顯示所有包含其他使用者的進程 |
如下圖
-
注意:在編寫程序於終端執行可執行程序的時候,可以結合shell中的管道命令,在終端輸出進程情況,如
-
ps aux | grep a.out # 顯示可執行文件的進程使用情況
涉及到的進程的狀態標誌如下
進程 | 意義 |
---|---|
R | 正在執行中 |
S | 阻塞狀態 |
T | 暫停執行 |
Z | 不存在但暫時無法消除 |
D | 不可中斷的靜止 |
< | 高優先級的進程 |
N | 低優先級的進程 |
L | 有內存分配並鎖在內存中 |
2)top命令
- 用以監控進程,並在終端中全屏顯示,隨着進程的狀態的變化而不斷變化更新
- 可以顯示系統總共有多少cpu和內存資源被佔用的情況
- 退出top進程,鍵盤按鍵
i+q
3)pstree命令
- 將所有進程以樹狀圖的形式顯示,樹狀圖將會以pid或者以init這個進本的進程爲根,若沒有指定使用者的id,則樹狀圖會只顯示蓋使用者所擁有的進程
4)kill命令
-
用以中止進程
-
語法格式:kill [-signal] [PID](signal爲信號,PID是進程號),如,不寫信號默認爲15(殺死不捕捉或不忽略的信號)
kill 502 # 不要隨便殺死系統默認的root進程
或不忽略的信號)
kill 502 # 不要隨便殺死系統默認的root進程
3.結尾
總結助人提高,時常總結,便於自己將定位擺正。