一、什么是进程?
进程就是系统未完成并且正在进行的工作。
二、查看系统进程
1、图形方式查看
gnome-system-monitor
2、进程查看命令
ps -A ##所有进程
-a ##在当前环境中运行的进程,不包含环境信息
-u ##显示进程用户信息
a ##在当前环境中运行的进程
x ##列出系统中所有运行包含tty输出设备
f ##显示进程的父子关系
e ##显示进程的详细信息(系统资源的调用)
ps常用组合:
ps aux ##显示系统中所有进程并显示进程用户
ps ef ##显示进程详细信息并显示进程父子关系
ps ax ##显示当前系统中的所有进程
pstree ##显示当前系统的进程树
如何根据自己的需要让每个进程显示指定的信息
ps -o xxx ##显示进程的指定信息
comm ##进程名称
user ##进程所有人
group ##进程所有组
%cpu ##进程cpu使用率
%mem ##进程内存使用率
pid ##进程id
nice ##进程优先级
示例:
ps -o comm,user,pid,%cpu
3、进程排序
ps ax --sort=
+%cpu|-%cpu ##按cpu占用率从小到大|从大到小排序
+%mem|-%mem ##按内存使用率 从小到大排序|从大到小排序
4、在stat进程状态中显示的信息
S ##进程状态
l ##内存中有锁定空间
N ##优先级低
< ##优先级高
- ##前台运行
s ##*进程
有锁定空间的进程可以理解为该进程进入后台后,其他进程不能占用该进程使用的内存。
5、进程优先级
优先级概念:
CPU资源分配的先后顺序,就是进程的优先权
优先权高的进程有优先执行的权利。配置进程优先权对多任务环境的Linux很有用,可以改善系统性能。
还可以把进程运行到指定的CPU上,这样一来,把不重要的进程安排到某个CPU,可以大大改善系统的整体性能。
(1)进程的优先级范围
-20~19
数字越小,进程优先级越高。
(2)优先级的查看
ps ax -o pid,nice,comm
(3)指定某个优先级开启进程
nice -n 优先级数字 进程名称
**注意:**nice指定优先级只对设定后新开启的进程有效,对设定前开启的进程无效。
(4)改变进程优先级
renice -n 优先级数字 进程pid
注意:nice与renice不同在于前者只对新产生的进程有效,而后者也可以改变已存在进程的优先级。
(6)环境中进程的前后台调用
jobs ##查看被打入环境后台的进程
ctrl+z ##把占用终端的进程打入暂停打入后台
fg jobsnum ##把后台进程调回前台
bg jobsnum ##把后台暂停的进程运行
comm & ##让命令直接在后台运行
(7)进程信号
1、常用的信号等级
1 ##进程重新加载配置
进程重新加载配置,指的是在进程不停止的情况下重新加载进程的配置文件信息,类似于游戏里面的“不停服更新“
2 ##删除进程在内存中的数据
3 ##删除鼠标在内存中的数据
解释:
对于删除进程在内存中的数据,如果该进程有锁定空间,那么删除进程在内存中的数据,相当于关掉这个进程。如果进程没有锁定空间,那么只是释放了该进程原占有的内存。
9 ##强行结束单个进程(不能被阻塞)
15 ##正常关闭进程 (可能会被阻塞)
分析:kill -9 为强行结束单个进程,不管该进程的优先级高不高。而kill -15 是正常关闭进程,一般对第三方软件可以正常关闭,但是对于优先级较高的进程,则可能被阻塞,不能关闭。
18 ##运行暂停的进程
19 ##暂停某个进程 (不能被阻塞)
20 ##把进程打入后台 (打入后台同时会暂停) (可以被阻塞)
更多的进程信号等级可以查看:
man 7 signal ##查看信号详细信息
killall -信号 进程名字
pkill -u student -信号
(8)进程的动态监控
top
1 ##显示cpu每个核的负载
s ##调整刷新频率
c ##cpu负载排序
m ##内存使用量排序
h ##查看帮助
u ##查看指定用户进程
k ##对指定进程发起信号
q ##退出