Linux CentOS7 进程基础知识

Linux中,每个执行的程序都被称之为一个进程,每一个进程都会有一个ID号(进程号pid)

可以这么理解,程序运行起来就是进程,程序是静态的,进程是动态的

进程可能以两种方式存在,前台和后台,前台进程是用户在屏幕上可以操作的,后台进程则是实际在进行的

一般系统的服务都是以后台进程的方式存在,而且都会常驻在系统中,直到关机才会结束

比如,我在这里用某个软件给另一个设备的人发消息,消息是从我这里的界面,发到软件背后的服务器,然后这个过程中运行的服务程序就是后台程序

ps指令

ps是用来查看目前系统中,有哪些正在执行的进程,以及这些进程的执行状况

基本语法

bash 复制代码
ps [可选选项]

选项

-e 显示所有进程
-f 以全格式
-a 显示当前终端的所有进程信息
-u 以用户的格式显示进程信息
-x 显示后台进程运行的参数

要用的话一般是同时使用的 ps -aux,或者ps -ef

直接输出的显示

字段 说明
PID 进程识别号
TTY 终端机号
TIME 此进程所消耗cpu时间
CMD 正在执行的命令或进程名

aux选项的:

字段 说明
USER 进程执行用户
PID 进程执行号
%CPU 当前程序占用cpu百分比
%MEM 占用的实际物理内存百分比
VSZ 占用虚拟内存的大小(单位KB
RSS 物理内存占用大小(单位KB
TTY 终端信息(名称,缩写
STAT 进程运行状态
START 进程开始执行的时间
TIME 使用CPU的总时长
COMMAND 执行这个进程的程序名/命令名

还有STAT显示的状态分类

STAT的状态分类

S 睡眠(后面加字母符号的是优先级不同
s 该进程是会话的先导进程
N 表示几次呢拥有更低的优先级
R 正在运行
D 短期等待
Z 僵尸进程(要定时清除
T 被跟踪或被停止

示例

bash 复制代码
ps -aux | greq sshd	#过滤出远程登陆服务
ps -aux | greq bash	#过滤出终端

ef选项的(BSD风格):

字段 说明
UID 用户ID
PID 进程ID
PPID 父进程ID
C cpu用于计算执行优先级的因子,数值越大,表明进程是CPU密集型运算,执行优先级会降低
STIME 进程启动的时间
TTY 完整的终端名称
TIME CPU时间
CMD 启动进程所用的命令和参数

kill指令

因某些进程需要停止或消耗资源过大时可以选择使用kill停止该进程

基本语法

bash 复制代码
kill [选项] [进程号]	#通过进程号杀死进程
killall [进程名称]	#通过进程名称杀死进程,也可以使用

通配符

选项:

-9 强制终止

示例:

bash 复制代码
kill 11425		#结束进程号为11425的进程
killaall gedit	#将gedit及其子进程都关了

pstree指令

pstree指令可以用来更加直观的查看进程信息

基本语法

bash 复制代码
pstree [选项]

常用选项

-p 显示进程的PID

-u 显示进程的所属用户

示例:

bash 复制代码
pstree -u	
#显示进程同时显示其所属用户

父子进程

父进程指一个进程创建了一个或多个进程,这个创建他们的进程就是他们的父进程

子进程就是进程创建的进程,通常父进程关闭后子进程也会关闭

ps -ef的PPID可以看到进程的父进程的进程号(如果为0代表本身就是最开始的进程

相关推荐
Skilce2 小时前
ZrLog 高可用部署
运维·服务器·数据库·阿里云·maven
我爱学习好爱好爱4 小时前
Ansible 常用模块详解:yum、service/systemd、copy实战
linux·服务器·ansible
papaofdoudou5 小时前
LINUX VFIO被IOMMUFD取代
linux·运维·服务器
平生不喜凡桃李5 小时前
浅谈 Linux 中 namespace 相关系统调用
java·linux·服务器
无忧智库6 小时前
智慧医院的“新基建”:从顶层设计到全栈式智能运维的深度解构(PPT)
大数据·运维
YMWM_6 小时前
【问题】thor上的cubLas
linux·python·thor
虾..7 小时前
多路复用 --- select系统调用
服务器·数据库·sql
杨云龙UP7 小时前
mysqldump逻辑备份文件恢复总结:全库恢复、单库恢复,一篇讲明白
linux·运维·服务器·数据库·mysql·adb
舰长1157 小时前
linux系统服务器加固1、中风险 未设置登录失败处理功能和登录连接超时处理功能。2、中风险 未限制默认账户的访问权限。3、中风险 未实现管理用户的权限分离。
linux·运维·服务器