1、进程的优先级:
0到139,140个优先级,数字越小,表示优先级越高
其中,0到99是内核决定的,100到139是可以由用户调整的
用户可以通过调整nice值来进行调整,默认每个进程的nice值都是0
nice值的取值范围是-20到19,对应100到139(普通用户只能调大nice值来降低优先级,管理员才有权限调大和调小nice值)
调整nice值:
(1)调整已经启动的进程的nice值:
renice NI PID
(2)在启动时指定nice值:
nice -n NI COMMAND
init进程:第一个进程,是所有进程的父进程,进程号为1
2、每一个进程的相关属性信息在/proc目录下,其下的每一个目录对应一个进程,对应的数字就是进程号(可能是曾经存在过的进程)
3、进程的状态
D:不可中断的睡眠
S:可以中断的睡眠
R:运行或就绪
T:停止
Z:僵死
<:高优先级进程
N:低优先级进程
+:前台进程组中的进程
l:多线程进程
s:会话进程首进程
4、进程相关命令:
ps命令:有2种风格,system V风格和BSD风格
sysV风格(需要加横杠-):
-o:显示指定字段的信息(默认只显示前台进程)
要想显示所有,则使用ps -axo 字段1,字段2
BSD风格(不需要加横杠-):
a:显示所有跟终端有关的进程(跟终端有关:在终端中通过命令行运行启动的)
x:显示所有跟终端无关的进程(跟终端无关:系统启动的时候自动启动的进程,用户还没登录就已经产生的进程)
u:显示进程跟哪个用户相关
pstree命令:显示当前系统的进程树
pgrep命令:根据进程名,查找进程的进程号
用法:pgrep 进程,如果加上选项-u user可以指定以哪个用户的身份运行的进程
pidof命令:根据程序名,查找其相关进程的ID号
top命令:默认根据CPU大小进行排序
(1)在top命令运行过程中按键:
M:根据内存大小排序
P:根据CPU大小排序
T:根据占用CPU时间大小排序
l:是否显示平均负载和启动时间
t:是否显示进程和CPU状态相关的信息
m:是否显示内存相关信息
c:是否显示完整的命令行信息
k:是否终止某个进程
q:退出top
(2)运行top命令时指定选项参数:
-d num:指定刷新时长,单位是s
-b:批模式,一屏一屏向后翻
-n num:在批模式下,显示多少屏,显示完成之后自动退出
前台作业送到后台:
ctrl+z:把正在前台的作业送到后台并停止运行
COMMAND &:让命令在后台执行
jobs:查看后台的所有作业
作业号:不同于进程号
+:命令将默认操作的作业
-:命令将第二个默认操作的作业
bg:让后台的停止作业继续运行
bg [JOBID]
fg:将后台的作业调回前台
fg [JOBID]
kill %JOBID:终止某作业
其他命令:
vmstat 1 5:查看系统状态,每隔1秒刷新1次,显示5次就停止退出
uptime:跟top显示内容的第一行是一样的
5、进程间通信(IPC)两种方式:
(1)共享内存
(2)信号:signal
6、重要的信号(通过数字表示):
1:SIGHUP,让一个进程不用重启,就可以重读其配置文件,并让新的配置信息生效
2:SIGINT,相当于ctrl-c,中断一个进程
9:SIGKILL,杀死一个进程
15:SIGTERM,终止一个进程
备注:
kill默认发送就是15号信号
指定一个信号:
信号号码:kill -9
信号名称:kill -SIGKILL
信号名称简写:kill -KILL
备注:
kill -l:查看各种信号名称以及对应的号码
killall 进程名:但凡是这个进程名的进程都会被杀死