linux進程管理

一.基本介紹

1.在 LINUX 中,每一個執行的程序(代碼)都稱爲一個進程。每個進程都分配一個 ID 號
2.每個進程,都會對應一個父進程,而這個父進程能夠複製多個子進程
3.每一個進程均可能以兩種方式存在的。前臺與後臺,所謂前臺進程就是用戶目前的屏幕上能夠進行操做的。後臺進程則是實際在操做,但因爲屏幕上沒法看到的進程,一般使用後臺方式執行
4.通常系統的服務都是之後臺進程的方式存在,並且都會常駐在系統中。直到關機才才結束

二.查看進程

查看進行使用的指令是 ps ,通常來講使用的參數是 ps -aux,ps -ef,正常與grep連用python

查看進程樹shell

pstree [選項]
    -p    查看進程pid
    -u    查看進程所屬用戶

三.結束進程

kill 進程號     #中止進程
kill-9 進程號   #強迫進程當即中止
killall 進程名稱 #中止全部相同的進程名稱

四.ps指令詳解

BSD風格 詳解

user            用戶名稱
pid             進程號
%cpu            進程佔用cpu百分比
%%mem           進程佔用物理內存的百分比
vsz             進程佔用虛擬內存的大小
rss             進程佔用物理內存的大小
tty             終端名稱(後臺則爲?)
stat            進程狀態
    S:睡眠
    s:會話的先導進程
    N:進程擁有比普通優先級更低的優先級
    R:正在運行
    D:短時間等待
    Z:殭屍進程
    T:被跟蹤或者被中止
start           進程啓動時間
time            使用cpu總時間
command         啓動進程所用的命令和參數,若是過長會被截斷顯示

system V 風格詳解

uid             用戶id
pid             進程id
ppid            父進程id
C               進程佔cpu百分比
stime           進程啓動時間
tty             終端名稱(後臺則爲?)
cmd             啓動進程所用的命令和參數

五.動態監控進程

top與 ps 命令很類似。它們都用來顯示正在執行的進程。Top 與 ps 最大的不一樣之處,在於top 在執行一段時間能夠更新正在運行的的進程ui

top [選項]
    -d          指定每隔幾秒更新,默認3秒
    -i          不顯示任何閒置或者殭屍進程
    -p id號      監聽指定進程


交互操做:
P       以cpu使用率排序,默認就這個
M       之內存使用率排序
N       以pid排序
u       監聽具體用戶
k       終止指定進程
q       退出top
相關文章
相關標籤/搜索