linux新手基础7——进程介绍
1.什么是进程?
程序(program)放置在存储存媒体中(如硬盘,光盘,软件,磁带等),为实体文件的型态存在
进程:程序被触发后,执行性者的权限与属性,程序的程序与所需数据等会被载入内容,操作系统并给予这个内存的单元一个识别码(PID),可以说,进程就是一个正在运行的程序。
2.查看进程
1).以图形方式查看
gnome-system-monitor
2).进程查看命令
命令 | 含义 |
---|---|
ps -A | 所有进程 |
ps -a | 在当前环境中运行的进程,不包含环境信息 |
ps -u | 显示进程用户信息 |
ps a | 在当前环境中运行的进程 |
ps x | 列出系统中所有运行包含tty输出设备 |
ps f | 显示进程的父子关系 |
ps e | 显示进程的详细信息(系统资源的调用) |
ps -a
ps -u
ps a
ps x
ps f
ps e
- 一些ps常用组合
命令 | 含义 |
---|---|
ps aux | 显示系统中所有进程并显示进程用户 |
ps -o comm | 显示系统进程名称 |
ps -o user | 显示进程所有人 |
ps -o group | 显示进程所有组 |
ps -o %cpu | 显示进程cpu使用率 |
ps -o %mem | 显示进程内存使用率 |
ps -o pid | 显示进程id |
ps -o nice | 显示进程优先级 |
ps aux
ps -o comm
ps -o user
ps -o group
ps -o %cpu
ps -o %mem
ps -o pid
ps -o nice
当然,此命令也是可以这样使用,一次显示多个进程信息
例如:ps -o %cpu,pid,user,nice
- 进程排序
命令格式
ps ax --sort=+%cpu|-%cpu ##表示查看所有进程信息并以cpu的使用量从小到大|从大到小排列
ps ax --sort= +%mem|-%mem ##表示查看所有进程信息并以进程内存的使用率从小到大|从大到小排列
注意: 其中‘ps ax’ 可以替换为其他的进程命令
例子:
ps -o %cpu,comm --sort=+%cpu(进程cpu使用量从小到大)
ps -o %cpu,comm --sort=-%cpu(进程cpu使用量从大到小)
ps -o %cpu,comm --sort=+%men(进程内存使用率从小到大)
ps -o %cpu,comm --sort=-%men(进程内存使用率从大到小)
stat中显示的信息
字母 | 含义 |
---|---|
S | 进程状态 |
l | 内存中有锁定空间 |
N | 优先级低 |
< | 优先级高 |
+ | 前台运行 |
s | 顶级运行 |
R+ | 正在运行 |
3进程优先级
1).进程优先级范围
-20 ——> 19:优先级越来越低
2).优先级查看
ps ax -o pid,nice,comm
3).指定某个优先级开启进程
nice -n 优先级数字 进程名称
例如:
nice -n -5 vim & ##开启vim并指定程序优先级为-5,&表示后台运行,不占用命令行
插入图片
4).改变进程优先级
renice -n 优先级数字 进程pid
例如:
renice -n -3 2770 #改变2770进程的优先级为-3
ps ax -o pid,nice,comm ##查看与当前环境相关的进程
nice -n -5 vim & #指定vim进程在开始时以-5的优先级运行,一定要加&符号,否则会占用命令行(终端)
4.环境中进程的前后台调用
jobs | 查看被打入环境后台的进程 |
ctrl+z | 把占用终端的进程打回后台 |
fg jobsnum | 把后台进程调回前台 |
bg jobsnum | 把后台暂停进程调回前台 |
jobs:
fg:
bg 2:
5.进程信号
1).常用信号等级
进程信号有30种(命令’ man 7 signal’ 可查看信号详细信息),但是常用的就是以下的8种
等级 | 含义 |
---|---|
1 | 进程重新加载配置 |
2 | 删除进程在内存中的数据 |
3 | 删除鼠标在内存中的数据 |
9 | 强行结束的单个进程(不能被阻塞) |
15 | 正常关闭进程(可能会被阻塞) |
18 | 运行暂停的程序 |
19 | 暂停某个进程 (不能被阻塞) |
20 | 把进程打入后台 (可能被阻塞) |
命令格式如下:
命令格式 |
---|
kill -信号 进程pid |
killall -信号 进程名字 |
pkill -u student -信号 |
例如:
kill -2 4971 #删除进程在内存中的数据,相当于ctrl+c
killall -9 firefox #关闭火狐浏览器
pkill -u root -20
SIGHUP 终止进程 终端线路挂断
SIGINT 终止进程 中断进程
SIGQUIP 建立CORE文件终止进程,并且生成core文件
SIGILL 建立CORE文件 非法指令
SIGTRAP 建立CORE文件 跟踪自现
SIGBUS 建立CORE文件 总线错误
6.进程的动态监控
1).top
命令 | 含义 |
---|---|
1 | 显示cpu每个核的负载 |
s | 调整刷新频率 |
c | cpu负载排序 |
m | 内存使用量排序 |
h | 查看帮助 |
u | 查看指定用户进程 |
k | 对指定进程发起信号 |
q | 退出 |
top:
1:
s:
调整刷新频率:
s 命令可将默认的3秒调整为1秒
c:
m:
h:
u:
k: