美文网首页
day20-进程管理(1)

day20-进程管理(1)

作者: 恩楠 | 来源:发表于2019-08-21 20:19 被阅读0次

1. 监控进程状态

  • 1.1 使用ps命令查看当前的进程状态(静态)
[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为常用组合,用于查看进程的用户、PID、占用cpu百分比、占用内存百分比、状态、执行的命令等

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@ennan ~]# vim test

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

[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再次运行ps命令查看状态

[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
  • 实验二、PS命令查看不可中断状态进程
    &emsp;在终端1上使用tar对文件进行打包
[root@ennan ~]# tar czf test.tar.gz /etc/ /usr/ /var/

 在终端2上不断查看状态

[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命令查看当前的进程状态(动态)
[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  

第一行解释及说明

top - 02:26:15 up  2:01,  3 users,  load average: 0.00, 0.01, 0.08
状态 说明
02:26:15 当前系统时间
2:01 系统运行时长
3 users 当前有3个用户(终端)连接到系统
load average 平均负载
0.00 一分钟内平均负载
0.01 五分钟内平均负载
0.08 十五分内平均负载

第二行解释及说明

Tasks: 109 total,   1 running, 108 sleeping,   0 stopped,   0 zombie
状态 说明
109 total 当前进程总数
1 running 正在运行的进程数量(R)
108 sleeping 睡眠的进程数(S)
0 stopped 停止,挂起的进程数(T)
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
状态 说明
0.0 us 系统用户进程使用CPU百分比
0.2 sy 内核中的进程占用CPU百分比,通常内核是于硬件进行交互
0.0 ni 优先级的进程占用cpu的百分比
99.8 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-进程管理-笔记

    Day20-进程管理 导读 今日内容1.什么是进程2.程序与进程之间有什么区别3.进程的生命周期4.进程运行的状态...

  • day20-进程管理(1)

    1. 监控进程状态 1.1 使用ps命令查看当前的进程状态(静态) ps -aux为常用组合,用于查看进程的用户、...

  • day20-进程管理

    1.什么是进程? 开发写的代码我们称之为程序,那么将程序运行起来,就叫进程 PS: 那么在程序运行成进程后,系统会...

  • Day20-进程管理

    1.什么是进程? 程序与进程之间有什么区别? 进程是程序的一个具体实现程序是一个静态的概念,可以永久的存储在磁盘进...

  • day20-进程管理

    《 磁盘管理 》进程管理 1.什么是进程: 例如:开发写的...

  • Day20-进程管理1(什么是进程?程序与进程的区别?进程的生命

    1.什么是进程 比如: 开发写的代码我们称为程序,那么将开发的代码运行起来。我们称为进程。总结一句话就是: 当我们...

  • linux 下的系统调用

    一、主要有以下模块 -进程管理-内存管理-文件管理-信号处理-进程通信-网络通信 一、进程管理 1.父进程通过fo...

  • 进程管理(1)

    操作系统会在任何时候暂停或继续一个程序的运行 程序A:a,c->a.exe程序B:b,c->b.exe1)...1...

  • Linux 内存笔记基础

    系统 1. 内存管理 2. 文件目录 3. IO 4. 进程管理进程创建进程控制进程通信进程同步 5. 线程管理线...

  • 2.进程管理

    进程管理 进程是操作系统的基本概念,本节主要总结Linux内核如何管理进程:进程在内核中如何创建,消亡。 1.进程...

网友评论

      本文标题:day20-进程管理(1)

      本文链接:https://www.haomeiwen.com/subject/xgzvsctx.html