进程管理

一、进程·、程序与线程。

程序:一组指令以及参数集合,按照相应的逻辑控制计算机完成特性任务。

进程:运行的程序,动态。操作系统上的基本单位具有生命周期,具有状态。
操作系统以进程为单位分配系统资源
每一个进程运行时独立的
具有独立的地址空间,运行状态
多个程序同时运行,每一个程序就是一个进程

线程:
一个进程中可有多个线程
线程无法独立运行,

二、进程的生命周期:

1)运行——>就绪:1,主要是进程占用CPU的时间过长,而系统分配给该进程占用CPU的时间是有限的;2,在采用抢先式优先级调度算法的系统中,当有更高优先级的进程要运行时,该进程就被迫让出CPU,该进程便由执行状态转变为就绪状态。

2) 就绪——>运行:运行的进程的时间片用完,调度就转到就绪队列中选择合适的进程分配CPU

3)运行——>阻塞:正在执行的进程因发生某等待事件而无法执行,则进程由执行状态变为阻塞状态,如发生了I/O请求

4) 阻塞——>就绪:进程所等待的事件已经发生,就进入就绪队列

5)僵死状态:进程已经结束但未释放进程控制块(PCB),Linux 使用TASK_ZOMBIE 宏表示此状态。

在这里插入图片描述

三、进程的管理工具
1、 pstree 进程树 查看进程树之间的关系
在这里插入图片描述
-p:显示pid
-u:显示用户
在这里插入图片描述
2、 ps
-a:显示所有进程
在这里插入图片描述
-u:显示以用户为主的进程
在这里插入图片描述
-x:和au配合使用,显示完整信息
在这里插入图片描述
-l:较长,较详细的将PID的信息列出。
在这里插入图片描述

参数解释
F程序的旗标 4:使用者superuser
S程序的状态(STAT)
UID执行者的身份
PID进程的ID号
PPID父进程的ID
CCPU使用资源百分比
NI这个进程的nice值
SZ使用过的内存大小
TIME使用掉的CPU时间

3、pgrep(通过pgrep来获得正在被调度的进程的相关信息)
默认只显示PID
-l:同时显示进程名和PID
-o:当匹配多个进程时,显示进程号最小的那个
-n:当匹配多个进程时,显示进程号最大的那个
在这里插入图片描述
4、 kill(杀死指定进程的PID进程)&&killall(杀死所有同名进程)&&pkill(ps+kill)
-9:杀死进程(强制杀死)
-w:等待进程死亡
-l:列出已知信号
在这里插入图片描述
-15:正常终止
kill 选项 进程号(pid)

5、htop(监控软件)
使用htop命令来查看进程:首先需安装epel rpm 包
1)安装
在这里插入图片描述
在这里插入图片描述
2)使用
在这里插入图片描述

快捷键快捷键说明
h,?F1查看htop使用说明
SF2htop设定(配置界面中的显示信息)
/F3搜索进程
\F4增量进程过滤器
tF5显示树状结构
<,>F6选择排序方式
[F7可减少nice值可以提高对应进程的优先级
]F8可增加nice值,降低对应进程的优先级
kF9可对进程传递信号(杀死进程)
qF10结束htop

6、vmstat(监控工具)
vmstat工具使用通过两个参数完成,第一个参数是采样的时间间隔数,单位是秒,第二个参数是采集的次数。

在这里插入图片描述

参数功能
-v显示vmstat版本信息
-n只在开始时显示一次各字段名称
-a显示活跃和非活跃内存
-d显示各个磁盘相关统计信息
-D显示磁盘总体信息

7、lsof(列出当前系统打开文件的工具)

在这里插入图片描述

参数功能
-u显示归属uname或GID的进程情况
-i用以显示符合条件的进程情况
-p列出进程号所标识的进程打开的文件
-d用于显示fd为某个的进程
+d显示目录下被进程开启的文件
+D显示目录下被进程开启的文件 ,但会搜索,时间较长
-c显示以某字母或字母段开头进程现在打开的文件
-g显示归属gname或GID的进程情况

四、进程优先级
1、相对优先级nice:SCHED_OTHER调整策略运行的进程的相对优先级称为进程的nice值。
nice值越高:表示优先级越低,例如+19,该进程容易将CPU使用量让给其他进程
nice值越低:表示优先级越高。例如-20,该进程更不倾向于让出CPU
2、查看进程的nice级别
1)top
在这里插入图片描述
NI:实际nice级别
2)ps
在这里插入图片描述
3、更新现有进程的nice级别
1)top
r:调整进程的优先级
2)shell

五、进程的状态
sleeping —睡眠状态
stopping —停止状态
running —运行状态
zombie —僵死状态
进程的状态是实时变化的。

六、进程前后台与状态

1)在前台一次只能运行一个作业。
2)在后台可以运行多个作业

例:
ping 192.168.42.2 > /dev/null 2>&1 &
把ping的结果放到/dev/null 放到后台运行

jobs(查看后台作业与终端,不同终端上的作业要在对应终端上查看。)
在这里插入图片描述
fg %job编号 把后台作业调到前台
在这里插入图片描述
bg %job编号 把后台作业运行起来
ctrl + z :把进程挂起
kill %job编号 先停止,在杀死。

在这里插入图片描述
七、/proc和/sys介绍
1、/proc 正在运行的内核信息映射
1)主要输出:进程信息
内存资源信息
磁盘分区信息

2)/proc下的文件基本都是只读的
在这里插入图片描述
2、/sys 文件系统
用户态可以通过对sys文件系统的访问,来看内核态的一些驱动或者设备。
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值