day20进程管理01

监控进程状态

使用ps命令查看当前的进程状态(静态)

ps -aux为常用组合,用于查看进程的用户、PID、占用cpu百分比、占用内存百分比、状态、执行的命令等

[root@zhaoshuang ~]#ps aux |more
USER        PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root          1  0.0  0.3  43516  3744 ?        Ss   11:28   0:01 /usr/lib/systemd/systemd --system --d
eserialize 3
root          2  0.0  0.0      0     0 ?        S    11:28   0:00 [kthreadd]
root          3  0.0  0.0      0     0 ?        S    11:28   0:00 [ksoftirqd/0]
root          5  0.0  0.0      0     0 ?        S<   11:28   0:00 [kworker/0:0H]
root          7  0.0  0.0      0     0 ?        S    11:28   0:00 [migration/0]
root          8  0.0  0.0      0     0 ?        S    11:28   0:00 [rcu_bh]
root          9  0.0  0.0      0     0 ?        R    11:28   0:00 [rcu_sched]
root         10  0.0  0.0      0     0 ?        S<   11:28   0:00 [lru-add-drain]
root         11  0.0  0.0      0     0 ?        S    11:28   0:00 [watchdog/0]
ps状态及描述
状态 描述
USER 启动进程的用户
PID 进程运行的ID号
%CPU 进程占用CPU百分比
%MEM 进程占用内存百分比
VSZ 进程占用虚拟内存的大小(单位KB)
RSS 进程占用物理内存实际大小(单位KB)
TTY 进程是由哪个终端运行启动的,tty1、pts/0等,?表示内核程序与终端无关
STAT 进程运行过程中的状态
START 进程启动的时间
TIME 进程占用的CPU的总时间(0表示还没超过秒)
COMMAND 程序执行的指令,[ ]内输入内核态的进程。没有[ ]的是用户态的进程。
STAT的状态及描述
STAT基本状 描述 STAT状态+符号 描述
R 进程运行 s Ss进程的领导者,父进程
S 可中断睡眠 < 进程运行在高优先级上,S<优先级较高的进程
T 进程被暂停 N 进程运行在低优先级上,SN优先级较低的进程
D 不可中断的睡眠 + 当前进程运行在前台,R+表示进程在前台运行
Z 僵尸进程 l 进程是多线程的,Sl表示进程是以线程方式运行的
实验一、PS命令查看进程状态切换

在终端1上运行 vim test

  [root@zhaoshuang ~]#vim test

在终端2上通过ps命令查看进程的状态

[root@zhaoshuang ~]#ps aux |grep vim
root      18021  0.0  0.5 151508  5168 pts/0    S<+  22:17   0:00 vim test
root      18023  0.0  0.0 112708   976 pts/1    R<+  22:19   0:00 grep --color=auto vim
[root@zhaoshuang ~]#

在终端1上挂起vim命令,按下:ctrl+z
&emsp;

Type  :quit  to exit Vim                                                      0,0-1         All

[1]+  Stopped  

回到终端2再次运行ps命令查看状态

[root@zhaoshuang ~]#ps aux |grep vim
root      18021  0.0  0.5 151508  5168 pts/0    T<   22:17   0:00 vim test
root      18031  0.0  0.0 112708   976 pts/1    R<+  22:20   0:00 grep --color=auto vim
[root@zhaoshuang ~]#
实验二、PS命令查看不可中断状态进程

&emsp;在终端1上使用tar对文件进行打包

[root@zhaoshuang ~/123]# tar czf test.tar.gz /etc/ /usr/ /var/
tar: Removing leading `/' from member names
tar: Removing leading `/' from hard link targets

在终端2上不断查看状态

[root@zhaoshuang ~]#ps aux | grep tar
root      18038  9.1  0.1 123816  1644 pts/1    S<+  22:23   0:01 tar czf test.tar.gz /etc/ /usr/ /var/
root      18042  0.0  0.0 112708   976 pts/2    R<+  22:23   0:00 grep --color=auto tar
[root@zhaoshuang ~]#ps aux | grep tar
root      18038  9.1  0.1 123816  1644 pts/1    S<+  22:23   0:01 tar czf test.tar.gz /etc/ /usr/ /var/
root      18044  0.0  0.0 112708   976 pts/2    R<+  22:23   0:00 grep --color=auto tar

使用top命令查看当前的进程状态(动态)

[root@zhaoshuang ~]#top
top - 22:25:35 up 10:56,  3 users,  load average: 4.06, 1.74, 0.68
Tasks: 103 total,   1 running, 100 sleeping,   2 stopped,   0 zombie
%Cpu(s):  0.0 us,  0.0 sy,  0.0 ni,100.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem :   995896 total,   100536 free,   154804 used,   740556 buff/cache
KiB Swap:  2047996 total,  2044924 free,     3072 used.   640748 avail Mem 

   PID USER      PR  NI    VIRT    RES    SHR S %CPU %MEM     TIME+ COMMAND                           
  7101 mongod    20   0  488580  46568  17064 S  0.3  4.7   3:03.94 mongod                            
     1 root      20   0   43516   3744   2420 S  0.0  0.4   0:01.69 systemd                           
     2 root      20   0       0      0      0 S  0.0  0.0   0:00.00 kthreadd                          
     3 root      20   0       0      0      0 S  0.0  0.0   0:00.81 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.00 migration/0                       
     8 root      20   0       0      0      0 S  0.0  0.0   0:00.00 rcu_bh                            
     9 root      20   0       0      0      0 S  0.0  0.0   0:01.08 rcu_sched                         
    10 root       0 -20       0      0      0 S  0.0  0.0   0:00.00 lru-add-drain 
第一行解释及说明

top - 22:25:35 up 10:56, 3 users, load average: 4.06, 1.74, 0.68

状态 说明
22:25:35 当前系统时间
10:56 系统运行时长
3 users 当前有3个用户(终端)连接到系统
load average 平均负载
4.06 一分钟内平均负载
1.74 五分钟内平均负载
0.68 十五分内平均负载
第二行解释及说明

Tasks: 103 total, 1 running, 100 sleeping, 2 stopped, 0 zombie

状态 说明
103 total 当前进程总数
1 running 正在运行的进程数量(R)
100 sleeping 睡眠的进程数(S)
2 stopped 停止,挂起的进程数(T)
0 zombie 僵尸进程数
第三列解释及说明

%Cpu(s): 0.0 us, 0.0 sy, 0.0 ni,100.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st

状态 说明
0.0 us 系统用户进程使用CPU百分比
0.0 sy 内核中的进程占用CPU百分比,通常内核是于硬件进行交互
0.0 ni 优先级的进程占用cpu的百分比
100.0 id 空闲CPU的百分比
0.0 wa CPU等待IO完成的时间
0.0 hi 硬中断,占的CPU百分比
0.0 si 软中断,占的CPU百分比
0.0 st 比如虚拟机占用物理CPU的时间
top常见指令
指令 含义
h 查看帮助
1 数字1,显示所有CPU核心的负载
b 高亮显示处于R状态的进程
M 按内存使用百分比排序输出
P 按CPU使用百分比排序输出

你可能感兴趣的:(day20进程管理01)