Linux中的進程和作業

進程

進程:Linux自身運行的獨立的程序

進程可以分爲三大類
交互進程:由一個shell啓動的進程,可以再前臺運行,也可以在後臺運行
批處理進程:是一個進程序列,和終端沒有聯繫
監控進程(守護進程):Linux系統啓動時,啓動的進程,並且在後臺運行

進程中常用的屬性
進程ID(PID):是唯一的數值,用來區分進程;
父進程的ID(PPID);
啓動進程的用戶ID(UID)和所歸屬的組(GID);
進程狀態:狀態分爲運行R、休眠S、殭屍Z;
進程執行的優先級;
進程所連接的終端名;
進程資源佔用:比如佔用資源大小(內存、CPU佔用量);

父進程和子進程:
他們的關係是管理和被管理的關係,當父進程終止時,子進程也隨之而終止。但子進程終止,父進程並不一定終止

在redhat/CentOS 7以上,所有進程的父進程:systemd
在redhat/CentOS 5,6中,所有進程的父進程:init


作業

作業:一個正在執行的進程,而且作業可以包含一個或多個進程。
作業控制:控制正在運行的進程的行爲。如:掛起一個進程,等一會在執行。這樣用戶就可以再多個作業之間切換。

ctrl+c:中斷當前shell中的會話
ctrl+z:掛起當前shell中的會話

&:在命令後面使用該符號,可以讓命令在後臺執行

jobs:查看當前後臺的作業狀態
-l:除了列出作業號外,同時列出PID
-r:列出僅僅在後臺運行的作業
-s:列出僅僅在後臺暫停的作業

fg:將後臺的命令調到前臺來繼續執行,不能放回後臺了
%作業編號

bg:將後臺暫停的命令繼續執行
%作業編號

ps –j 顯示當前作業進程信息
TGID:線程組ID號
SID:會話ID號

Linux中斷進程
信號:傳遞給Linux進程的操作

kill –l 顯示可以傳遞給Linux進程的所有信號

常用:
kill -9 PID 殺死一個進程—強制
kill -15 PID 正常的方式終止一個進程
kill -2 可以control+c的操作是一樣的

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章