ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

进程管理

2022-05-04 15:33:05  阅读:189  来源: 互联网

标签:ps 结束 僵尸 管理 孤儿 进程 运行


进程管理

进程概述

# 什么是进程
进程就是一个正在运行的程序
# 程序与进程的区别
进程是动态概念,具有生命属性,无法长期存放在系统中
程序是静态概念,代码的集合,可以长期存放在系统中
# 进程的生命周期
接收任务-fork子进程处理任务-父进程等待
正常结束
非正常结束
	产生僵尸进程
	产生孤儿进程
# 什么是僵尸进程
子进程先结束,父进程没有及时回收子进程的占用资源
# 什么是孤儿进程
父进程先结束,子进程没有父进程的管理

流程的生命周期

img

1.用户发起请求
2.父进程会fork出子进程,子进程会继承父进程的大部分属性,如:文件描述等,处理任务
3.子进程在处理任务的过程中,父进程是一个wait状态,等待子进程
4.正常结束
5.非正常结束
	僵尸进程
	孤儿进程

僵尸进程及产生原因

# 僵尸进程
子进程比父进程先结束
父进程没有回收子进程的资源
此时子进程就被称为僵尸进程
# 产生原因
子进程的结束和父进程的运行时异步的
父进程永远不知道子进程什么时候结束
子进程在结束时,父进程繁忙来不及wait子进程就会导致子进程变成僵尸进程

孤儿进程及产生的原因

# 孤儿进程
父进程比子进程先结束
子进程还在执行任务,没有父进程管理
此时的子进程被称为孤儿进程
# 产生原因
子进程的结束与父进程的运行是异步的
父进程永远不知道子进程什么时候结束
当父进程正常完成工作或其他原因被终止
则会导致子进程变成孤儿进程

监控进程状态

进程状态管理命令-ps

ps  [选项]  [参数]
# 常见参数
ps  -ef
ps aux
a :查看所有与终端相关的进程,由终端发起的进程
u :显示进程的管理用户
x :查看所有与终端无关的进程

USER        PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND

USER : 该进程的管理用户
PID :进程号
%CPU :该进程占用CPU的百分比
%MEM :该进程占用内存的百分比
VSZ :该进程占用虚拟内存大小
RSS :该进程占用的物理内存大小
TTY :
	?:由终端发起的进程
	tty :机器上的终端
	pts/n :远程连接工具的终端进程
STAT :进程运行状态
	D :无法中断的休眠状态 (通ID的进程)''''
	R :正在运行的状态 ''''
	S :处于休眠状态的进程 ''''
	T : 暂停或者被追责的状态
	W :进入交换内存的进程 (swap,centos7见不到)
	X :死掉的进程 (少见)
	Z :僵尸进程 ''''
	< :优先级高的进程
	N :优先级低的进程
	L :有些数据页被锁进内存的进程
	s :父进程,在它下面有子进程
	l :以线程的方式运行
	| :存在多进程的进程
	+ :在前台运行  ''''
START : 进程开启的时间
TIME :该进程占用CPU时间
COMMAND :进程的名字或进程的命令
	[] : 内核态进程
	没有[] : 用户态进程
# 查看所有被暂停的进程
jobs 
bg :让暂停的程序运行起来,后面加数字,就可以运行第几个被暂停的进程 (默认是最后一个)
fg : 把后台暂停的程序调到前台运行,后面加数字,可以将的n个进程调到前台运行 (默认是最后一个)

ps命令用法

# 根据%cpu进行排序
ps aux | sort -k 3
ps aux --sort %cpu

# 自定义显示字段
o :自定义显示字段

ps axo user,%cpu

# 显示子进程
f :查看子进程和父进程
ps auxf |grep nginx

# 查看指定进程的pid
pgrep :竖向排列
pidof  :横向排列
-l 查看该进程的启动命令
-a 显示该进程的完整描述信息



标签:ps,结束,僵尸,管理,孤儿,进程,运行
来源: https://www.cnblogs.com/ghjhkj/p/16221255.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有