目录
1、查看进程信息
(1) 查看进程快照 —— ps
(2) 查看进程的动态信息 —— top
(3) 查看进程的详细信息 —— /proc
2、操作后台进程
(1) 将进程转为后台
(2) 将后台进程转为前台运行 fg
(3) 查看后台进程 jobs
1、查看进程信息
(1) 查看进程快照 —— ps
所谓快照,类似于截图,将当前时刻的进程信息(截图)显示出来。语法格式如下:
ps [ -e | -l | -f ]
选项解析:
- -e : 显示所有的进程
- -l :长格式显示更加详细的信息(如进程PPID、进程优先级的NI值)
- -f :全部列出
图中字段解析:
字段 | 含义 |
F | 进程标志,说明进程的权限,常见的标志有两个: 1:进程可以被复制,但是不能被执行; 4:进程使用超级用户权限; |
S | 进程状态 |
UID | 运行此进程的用户的ID |
PID | 进程的ID |
PPID | 父进程的ID |
C | 该进程的CPU使用率,单位是百分比 |
PRI | 进程的优先级,数值越小,该进程的优先级越高,越早被CPU执行 |
NI | 进程的优先级,数值越小,该进程越早被执行 |
ADDR | 该进程在内存的哪个位置 |
SZ | 该进程占用多大内存 |
WCHAN | 该进程是否运行。"-"代表正在运行 |
TIME | 该进程占用CPU的运算时间,注意不是系统时间 |
CMD | 产生此进程的命令名 |
(2) 查看进程的动态信息 —— top
附加选项
附加选项 | 解析 |
-p | 查看指定进程的实时动态信息 |
-d | 设置信息更新时间,比如top -d 1表示1s刷洗一次 |
-c | 设置信息更新次数,比如top -c 2 表示更新2次以后就停下来 |
shift + > | 向后翻页 |
shift + < | 向前翻页 |
内存信息
字段 | 字段含义 |
total | 物理内存总量 |
used | 使用中的内存总量 |
free | 空闲内存总量 |
buffers | 缓存的内存量 |
进程相关字段解析
字段 | 字段含义 |
PID | 进程id |
USER | 进程所有者 |
PR | 进程优先级 |
NI | nice值。负值表示高优先级,正值表示低优先级 |
VIRT | 进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES |
RES | 进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA |
SHR | 共享内存大小,单位kb |
S | 进程状态。 D=不可中断的睡眠状态 R=运行 S=睡眠 T=跟踪/停止 Z=僵尸进程 |
%CPU | 上次更新到现在的CPU时间占用百分比 |
%MEM | 进程使用的物理内存百分比 |
TIME+ | 进程使用的CPU时间总计,单位1/100秒 |
COMMAND | 进程名称(命令名/命令行) |
(3) 查看进程的详细信息 —— /proc
Linux下一切皆文件,进程也是以文件的形式被保存的,这些进程文件就被保存在 /proc 目录下
2、操作后台进程
(1) 将进程转为后台
将进程转为后台有两种方式:
- ctrl + z:将进程转为后台,并停止运行该进程(可以使用信号来唤醒该进程)
- 命令 &:将进程或者程序放在后台运行,不会停止该进程的运行。
- ./test &: 将test程序放在后台运行
- bg:将挂起的进程放在后台运行(注意是挂起的进程)
(2) 将后台进程转为前台运行 fg
假设我们先用ctrl + z 让当前正在运行的进程转为后台
让后台的 1号进程恢复到前台运作
(3) 查看后台进程 jobs
假设我们先用ctrl + z 让当前正在运行的进程转为后台,再使用jobs命令查看