Linux 進程與線程
進程由內核和內核上運行的一系列進程所組成
一個CPU上運行一個進程,多進程的意思是:在一個CUP中可以多個進程,(即多進程)但是是相互切換,但是會造成性能損失,也就是說一個時間點只能運行一個進程。
程序執行在內存裏面,進程描述在內核裏面。
線程:輕量進程,是程序執行中最小單元。同一個進程中多個進程可以併發執行。
Ready:準備運行
Sopped:停止狀態
Executing:運行過程
Uninterruptible:不可中斷睡眠
Interruptible::可中斷睡眠
殭屍進程:一般只能重啓,會釋放資源
進程中的命令:
pss ps -aux ps -al
pstree 查看進程樹
ps -ef 列出進程
ps -al
S :R表示進正在運行 T:進程被停止 X:進程被退出 Z:殭屍進程
top :顯示管理執行中的程序
jobs:顯示作業
...& 代表後臺執行
Ctrl+z 代表進程暫停
Ctrl+c 代表進程終止
fg %jobnum 後臺工作放在前臺處理
Kill -signal %jobnumber、PID
Signal:-9 代表強制殺死該進程
-15 以正常工作結束進程
-17暫停進程,相當於ctrl+z
-2 中斷進程,相當於ctrl+cr
查找進程命令:ps -ef | grep “ ”