day20-進(jìn)程管理(1)

1. 監(jiān)控進(jìn)程狀態(tài)

  • 1.1 使用ps命令查看當(dāng)前的進(jìn)程狀態(tài)(靜態(tài))
[root@ennan ~]# ps aux | more
USER        PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root          1  0.0  0.3  46240  3768 ?        Ss   01:50   0:08 /usr/lib/systemd/systemd --syste
m --deserialize 16
root          2  0.0  0.0      0     0 ?        S    01:50   0:00 [kthreadd]
root          3  0.0  0.0      0     0 ?        S    01:50   0:07 [ksoftirqd/0]
root          5  0.0  0.0      0     0 ?        S<   01:50   0:00 [kworker/0:0H]
root          7  0.0  0.0      0     0 ?        S    01:50   0:00 [migration/0]
root          8  0.0  0.0      0     0 ?        S    01:50   0:00 [rcu_bh]

ps -aux為常用組合,用于查看進(jìn)程的用戶、PID、占用cpu百分比、占用內(nèi)存百分比、狀態(tài)、執(zhí)行的命令等

ps狀態(tài)及描述

狀態(tài) 描述
USER 啟動(dòng)進(jìn)程的用戶
PID 進(jìn)程運(yùn)行的ID號(hào)
%CPU 進(jìn)程占用CPU百分比
%MEM 進(jìn)程占用內(nèi)存百分比
VSZ 進(jìn)程占用虛擬內(nèi)存的大?。▎挝籏B)
RSS 進(jìn)程占用物理內(nèi)存實(shí)際大?。▎挝籏B)
TTY 進(jìn)程是由哪個(gè)終端運(yùn)行啟動(dòng)的,tty1、pts/0等,?表示內(nèi)核程序與終端無(wú)關(guān)
STAT 進(jìn)程運(yùn)行過(guò)程中的狀態(tài)
START 進(jìn)程啟動(dòng)的時(shí)間
TIME 進(jìn)程占用的CPU的總時(shí)間(0表示還沒(méi)超過(guò)秒)
COMMAND 程序執(zhí)行的指令,[ ]內(nèi)輸入內(nèi)核態(tài)的進(jìn)程。沒(méi)有[ ]的是用戶態(tài)的進(jìn)程。

STAT的狀態(tài)及描述

STAT基本狀態(tài) 描述 STAT狀態(tài)+符號(hào) 描述
R 進(jìn)程運(yùn)行 s Ss進(jìn)程的領(lǐng)導(dǎo)者,父進(jìn)程
S 可中斷睡眠 < 進(jìn)程運(yùn)行在高優(yōu)先級(jí)上,S<優(yōu)先級(jí)較高的進(jìn)程
T 進(jìn)程被暫停 N 進(jìn)程運(yùn)行在低優(yōu)先級(jí)上,SN優(yōu)先級(jí)較低的進(jìn)程
D 不可中斷的睡眠 + 當(dāng)前進(jìn)程運(yùn)行在前臺(tái),R+表示進(jìn)程在前臺(tái)運(yùn)行
Z 僵尸進(jìn)程 l 進(jìn)程是多線程的,Sl表示進(jìn)程是以線程方式運(yùn)行的
  • 實(shí)驗(yàn)一、PS命令查看進(jìn)程狀態(tài)切換
    ?在終端1上運(yùn)行vim test
[root@ennan ~]# vim test

?在終端2上通過(guò)ps命令查看進(jìn)程的狀態(tài)

[root@ennan ~]# ps aux | grep vim
root      12665  0.2  0.2 151540  5248 pts/0    S+   01:46   0:00 vim test
root      12667  0.0  0.0 112708   972 pts/1    S+   01:46   0:00 grep --color=auto vim

?在終端1上掛起vim命令,按下:ctrl+z
&emsp;回到終端2再次運(yùn)行ps命令查看狀態(tài)

[root@ennan ~]# ps aux | grep vim
root      12668  0.1  0.2 151540  5248 pts/1    T    01:54   0:00 vim test
root      12672  0.0  0.0 112708   976 pts/0    S+   01:55   0:00 grep --color=auto vim
  • 實(shí)驗(yàn)二、PS命令查看不可中斷狀態(tài)進(jìn)程
    &emsp;在終端1上使用tar對(duì)文件進(jìn)行打包
[root@ennan ~]# tar czf test.tar.gz /etc/ /usr/ /var/

?在終端2上不斷查看狀態(tài)

[root@ennan ~]# ps aux | grep tar
root      12679 15.6  0.1 124832  2592 pts/1    R+   02:00   0:09 tar czf test.tar.gz /etc/ /usr/ /var/
root      12789  0.0  0.0 112708   976 pts/0    S+   02:01   0:00 grep --color=auto tar
[root@ennan ~]# ps aux | grep tar
root      12679 15.6  0.1 124832  2592 pts/1    D+   02:00   0:09 tar czf test.tar.gz /etc/ /usr
  • 1.2 使用top命令查看當(dāng)前的進(jìn)程狀態(tài)(動(dòng)態(tài))
[root@ennan ~]# top
top - 02:26:15 up  2:01,  3 users,  load average: 0.00, 0.01, 0.08
Tasks: 109 total,   1 running, 108 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.0 us,  0.2 sy,  0.0 ni, 99.8 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem :  2028116 total,    75516 free,   137336 used,  1815264 buff/cache
KiB Swap:   819196 total,   819196 free,        0 used.  1636144 avail Mem 

   PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND                     
 12875 root      20   0  161880   2200   1556 R   0.3  0.1   0:00.09 top                         
     1 root      20   0  128408   6972   4160 S   0.0  0.3   0:03.95 systemd                     
     2 root      20   0       0      0      0 S   0.0  0.0   0:00.01 kthreadd                    
     3 root      20   0       0      0      0 S   0.0  0.0   0:01.19 ksoftirqd/0                 
     5 root       0 -20       0      0      0 S   0.0  0.0   0:00.00 kworker/0:0H                
     7 root      rt   0       0      0      0 S   0.0  0.0   0:00.23 migration/0  

第一行解釋及說(shuō)明

top - 02:26:15 up  2:01,  3 users,  load average: 0.00, 0.01, 0.08
狀態(tài) 說(shuō)明
02:26:15 當(dāng)前系統(tǒng)時(shí)間
2:01 系統(tǒng)運(yùn)行時(shí)長(zhǎng)
3 users 當(dāng)前有3個(gè)用戶(終端)連接到系統(tǒng)
load average 平均負(fù)載
0.00 一分鐘內(nèi)平均負(fù)載
0.01 五分鐘內(nèi)平均負(fù)載
0.08 十五分內(nèi)平均負(fù)載

第二行解釋及說(shuō)明

Tasks: 109 total,   1 running, 108 sleeping,   0 stopped,   0 zombie
狀態(tài) 說(shuō)明
109 total 當(dāng)前進(jìn)程總數(shù)
1 running 正在運(yùn)行的進(jìn)程數(shù)量(R)
108 sleeping 睡眠的進(jìn)程數(shù)(S)
0 stopped 停止,掛起的進(jìn)程數(shù)(T)
0 zombie 僵尸進(jìn)程數(shù)

第三列解釋及說(shuō)明

%Cpu(s):  0.0 us,  0.2 sy,  0.0 ni, 99.8 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
狀態(tài) 說(shuō)明
0.0 us 系統(tǒng)用戶進(jìn)程使用CPU百分比
0.2 sy 內(nèi)核中的進(jìn)程占用CPU百分比,通常內(nèi)核是于硬件進(jìn)行交互
0.0 ni 優(yōu)先級(jí)的進(jìn)程占用cpu的百分比
99.8 id 空閑CPU的百分比
0.0 wa CPU等待IO完成的時(shí)間
0.0 hi 硬中斷,占的CPU百分比
0.0 si 軟中斷,占的CPU百分比
0.0 st 比如虛擬機(jī)占用物理CPU的時(shí)間

top常見(jiàn)指令

指令 含義
h 查看幫助
1 數(shù)字1,顯示所有CPU核心的負(fù)載
b 高亮顯示處于R狀態(tài)的進(jìn)程
M 按內(nèi)存使用百分比排序輸出
P 按CPU使用百分比排序輸出
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容