1.进程查看
命令 | 注释 |
---|---|
ps -o comm | 进程名称 |
ps -o user | 进程所有人 |
ps -o group | 进程所有组 |
ps -o %cpu | 进程cpu使用率 |
ps -o %mem | 进程内存使用率 |
ps -o pid | 进程id |
ps -o nice | 进程优先级 |
(注意:“ps -o” 即自定义输出格式,比如“-o pid,nice”就是查看进程的pid和优先级,这样就不会像默认那样显示其它内容了)
2.进程排序
ps ax --sort=+%cpu|-%cpu (让进程以cpu的使用率以正序|倒序排列)
ps ax --sort=+%mem|-%mem (让进程以内存使用率以正序|倒叙排列)
例如:抓取系统中使用量排在前五的pid,如图所示:
stat中显示的信息
命令:
ps -o pid,nice,comm,stat
字母 | 注释 |
---|---|
S | 进程状态 |
l | 内存中有锁定空间 |
N | 优先级低 |
< | 优先级高 |
+ | 前台运行 |
s | 顶级进程 |
R+ | 正在运行 |
注意如上图中:
输入命令后最上面一行
PID 表示进程的id,
NI 即进程的nice值,数值大表示较少占用cpu时间
STAT 表示进程状态
(进程状态有以下几种:S 处于休眠状态;R正在运行;T 停止;Z 僵尸进程;< 优先级高的进程;l 有锁定空间的;+ 位于后台的进程组;s 进程的领导者,在它的下面有子进程,,,等)
%CPU 进程占用的cpu百分比
%MEM 占用内存的百分比
3.进程优先级
1)进程的优先级范围
-20~19
数字越大,优先级越低
2)优先级查看
命令:ps ax -o pid,nice,comm
3)指定某个优先级开启进程
nice -n 优先级数字 进程名称
nice -n -5 gedit & (开启gedit并且指定优先级为-5)
如图:
4)改变进程优先级
renice -n 优先级数字 进程pid
renice -n 10 3182 (改变3182的有限级为10,如下图所示)
如图:
4.环境中进程的前后调用
命令 | 注释 |
---|---|
jobs | 查看被打入环境后台的进程 |
ctrl+z | 把占用终端的进程打入后台 |
fg jobsnum | 把后台进程调回前台 |
bg jobsnum | 把后台暂停的进程运行 |
comm & | 让命令直接在后台运行 |
+表示默认操作
-表示次默认操作
如图直接使用fg时,默认的对象为前面有+的firefox进程:
5.进程信号
1)常用信号等级
信号等级 | 注释 |
---|---|
1 | 进程重新加载配置 |
2 | 删除进程在内存中的数据 |
3 | 删除鼠标在内存中的数据 |
9 | 强行结束单个进程(不能被阻塞) |
15 | 正常关闭进程(可能会被阻塞) |
18 | 运行暂停的进程 |
19 | 暂停某个进程(不能被阻塞) |
20 | 把进程打入后台(可以被阻塞) |
man 7 signal | 查看信号详细信息 |
用法
kill -信号等级 进程pid
killall -信号等级 进程名字
pkill -u 用户名 -信号等级
注意:
1.当使用信号2删除在内存中的数据时,有锁定空间的进程会被关闭
2.信号1为热更新,即更新系统文件的时候不停止更新
6.进程的动态监控
命令:top
在监控界面下输入 | 注释 |
---|---|
1 | 显示cpu每个核的负载 |
s | 调整刷新频率 |
c | cpu负载排序 |
m | 内存使用量排序 |
h | 查看帮助 |
u | 查看指定用户进程 |
k | 对制定进程发起信号 |
q | 退出 |