Linux - 进程

一、什么是进程

首先,Linux是一个多用户多进程的操作系统,系统上可以同时运行多个进程。

进程的产生:①是在执行程序或者命令时产生的;②定时任务进程

进程的类型:前台进程/后台进程

前台进程:一个终端界面,一次只能执行一个程序或者命令;

后台进程:可以同时执行多个程序或者命令;

不论前台进程还是后台进程都受限于终端,如果终端被kill,前后台的进程也会被kill


二、进程的状态(STAT)

R 正在运行

S 休眠/静默 ==> 等待运行

Z 僵尸 ==> 父进程无法正常终止子进程/系统资源到达临界值

T 已经停止

Ss // 父进程

S< // 优先级较高的进程

SN // 优先级较低的进程

R+ // 前台的进程组

SI // 以线程的方式运行


三、进程查看

常用查询终端命令及进程排序

tty // 查看当前终端

who // 查看机器上所有的终端

w // 查看机器上所有的终端详情

--sort // 从低到高排序

--sort - // 从高到低排序

1.查看瞬时的进程状况 ps

①ps -ef

首行,从左往右依次为:

拥有者 进程号 父进程号 cpu占用率 开始时间 终端名 运行时间 命令

②ps aux

首行,从左往右依次为:

拥有者 pid cpu占用率 内存占用率 占用的虚拟内存大小 驻留内存大小 终端 进程状态

开始时间 运行时间 命令

③ps axo
// 自定义查看进程的内容,一般携带命令作为查看的内容
④pgrep // 查询指定的服务或者命令的pid,一般用来查持续运行状态下的服务的pid
⑤pstree // 查看进程与进程之间的关系

2.查看即使的进程状况 top/htop

top //top查看进程状况时,默认以cpu占用从高到底进行排序

top 前五行

第一行:top - 06:18:40 up 3:15, 1 user, load average: 0.06, 0.02, 0.00

含义分别是:系统时间、运行时间、登录终端数、系统负载(三个数值分别为 1 分钟、5 分钟、15 分钟内的平均值,数值越小意味着负载越低)

第二行:Tasks: 365 total, 1 running, 364 sleeping, 0 stopped, 0 zombie

含义分别是:进程总数、运行中的进程数、睡眠中的进程数、停止的进程数、僵尸的进程数。

第三行:%Cpu(s): 0.4 us, 0.5 sy, 0.0 ni, 98.8 id, 0.0 wa, 0.3 hi, 0.0 si, 0.0 st

含义分别是:用户占用资源百分比系统内核占用资源百分比 、改变过优先级的进程资源百分比、空闲的资源百分比、等待输入输出的cpu时间百分比、硬中断占用的cpu百分比、软中断占用的cpu百分比和用于虚拟cpu的情况。

第四行:MiB Mem:7790.6 total, 4309.7 free,2571.4 used, 909.5buff/cache

含义分别是:物理内存总量、内存空闲量、内存使用量、作为内核缓存的内存量。

第五行:MiB Swap: 2095.0 total, 2095.0 free, 0.0 used. 4882.7 avail Mem

含义分别是:虚拟内存总量、虚拟内存空闲量、虚拟内存使用量、已被提前加载的内存量。

htop
==> top的基础上,点击进程信息就能从高到低排序,有高亮效果和搜索功能,支持调整显示信息

四、进程控制

kill 控制进程的方式?

kill 命令通过传递信号来给进程执行相应的操做

kill -l //信号列表

常用的信号

1 对于服务而言,可以在不重启或者停止服务的情况下,重新进行配置;

2 中断进程,相当于ctrl+C

9 强制结束进程

15 正常结束进程,先结束子进程,再结束父进程

18 继续进程

20 暂停进程

控制进程的方式

kill // 结束某个具体进程

pkill //

-u // 踢出某个终端用户

-t // 踢掉某个终端

kiall // 结束相关的所有进程

xkill // 图形化/手动点击结束进程


五、进程调度

为什么要进行进程调度?

首先,前台进程一个终端只能执行一次,然后当某个进程要求不能受终端影响时,需要将任务不挂起且放到后台运行。

nohup //不挂起

fg //前台

bg //后台

jobs //查后台任务

相关推荐
0wioiw09 分钟前
Docker(基础指令)
运维·docker·容器
Jk_Mr11 分钟前
Linux-进程状态
linux·操作系统·进程
_F_y11 分钟前
Linux:进度条编写
linux
翼龙云_cloud13 分钟前
阿里云渠道商:什么是阿里云无影云手机?
运维·阿里云·智能手机·云计算
mooyuan天天24 分钟前
Cobalt Strike渗透生成 linux http Beacon不生效bug分析与解决方法
linux·内网渗透·横向移动·cobalt strike
赖small强24 分钟前
【音视频开发】Linux 平台图像处理与视频录制全流程指南 (Ingenic T41)
linux·图像处理·音视频·isp·视频录制
vortex526 分钟前
Docker 逃逸常见利用方式
运维·docker·容器
0wioiw027 分钟前
Docker(Portainer)
运维·docker·容器
w我是东山啊28 分钟前
ARP的具体过程和ARP欺骗
linux·服务器·网络
橙露30 分钟前
PLC编程语言大比拼:特性解析与场景选型指南
大数据·linux·运维