Linux中如何控制系统中的进程

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 退出

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_44299264/article/details/86376920