Linux进程管理

进程管理

1.什么是进程

  • 进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础。即运行中的程序

2.进程状态

字符含义
R正在运行
Ssleeping 睡眠,可被唤醒【运行】未被使用
D不可唤醒的睡眠状态,一般在磁盘读取时
Tstop 停止,可能在工作控制或移错状态
Zzombie 僵尸状态,进程已被终止但无法移除内存

3.查看进程

图形进程管理器查看方式:

gnome-system-monitor

在这里插入图片描述

命令行查看方式:

ps
	a	在shell中运行的所有进程

在这里插入图片描述

	-A	all

在这里插入图片描述

	-a	在shell中的进程(不包含环境信息)

在这里插入图片描述

	-d	all(不包含环境)

在这里插入图片描述

	e	显示进程的扩展信息
	u	显示user等详细信息
	f	树形显示(父进程,子进程,孤儿进程)

在这里插入图片描述

	x	显示所有运行包含tty的进程

在这里插入图片描述

	常用组合:
	aux	显示所有进程及其用户	

在这里插入图片描述

	ef	显示进程详细信息并显示父子关系	

在这里插入图片描述

	ax	显示系统中的所有进程
	pstree	显示当前系统的进程树

在这里插入图片描述

ps -o	xxx	显示进程的指定信息
	comm	进程名称
	user  	进程所有人
	group		
	%cpu
	%mem	内存使用率
	pid 	进程id
	nice	优先级

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

进程排序:

ps ax --sort=
		+%cpu|-%cpu
		+%mem|-%mem

在这里插入图片描述

进程状态:

字符含义
S进程状态
l内存中有锁定空间
N优先级低
<优先级高
+正在运行
s顶级进程

3.进程优先级

1)进程优先级范围

-20~19
默认为0
数字越大,优级越低

2)优先级查看

ps ax -o pid,nice,comm

在这里插入图片描述

3)指定某个优先级开启进程

nice -n  数字	进程名称	##开启进程并指定其优先级

在这里插入图片描述

4)修改某个进程的优先级

renice -n 数字	pid

在这里插入图片描述

4.环境中进程的前后台调用

命令行作用
jobs查看被打入后台的进程
ctrl+z把占用shell的进程打入后台
fg jobnum把后台进程调回前台
bg把后台暂停的进程运行
comm &让命令直接在后台运行

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

5.进程信号

1)常用信号等级

等级意义
1进程重新加载配置
2删除进程在内存的数据
3删除鼠标在内存的数据
9强行结束单个进程(不可阻塞)
15正常关闭进程(可能会被阻塞)
18运行暂停的进程
19暂停某个进程(不可阻塞)
20把进程打入后台(可被阻塞)
man 7 signal查看信号详细信息
kill	-信号	pid					##根据pid杀死进程
killall	-信号	进程name				##根据名字杀死进程
pkill 	-u sutudent(条件)	-信号	##根据所输条件所输信号杀死进程

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

6.进程的动态监控

top
	1	##显示cpu每个核的负载
	s	##调整刷新频率
	c	##cpu负载排序
	m	##内存使用量排序
	h	##查看帮助
	u	##查看指定用户进程
	k	##对指定进程发起信号
	q	##退出

在这里插入图片描述

7.控制服务

1)什么是服务

  • Linux中的服务是一类常驻在内存中的进程,这类进程启动后就在后台当中一直持续不断的运行,因为这类进程通常是负责一些系统提供的功能来服务用户的各项任务,所以这类进程被称为服务,比如crond、atd、syslog、Apache都是属于服务,服务叫做daemon进程,从它的英文含义上也可以看出这类进程的特点。

2)为什么控制服务

  • 系统初始化进程可以对服务进行相应的控制。

3)当前系统初始化进程是什么

systemd		##系统初始化进程
pstree		##显示系统中的进程树

在这里插入图片描述

4)进程控制命令

ssh--------->sshd
client		server

systemctl		##服务控制命令
systemctl	status	sshd	##查看服务状态
				##inactive(不可用)active(可用)

在这里插入图片描述

systemctl	start 	sshd	##开启服务
systemctl	stop	sshd	##关闭服务	
systemctl	restart	sshd	##重启服务
systemctl	reload 	sshd	##重新加载服务配置
systemctl	enable	sshd	##设定服务开机自启
systemctl	disable	sshd	##设定服务开机不自启
systemctl	list-units	##列出已经开启的服务的当前状态

在这里插入图片描述

systemctl	list-unit-files	##列出所有服务开机时的状态 disable,enable,static	

在这里插入图片描述

systemctl	list-dependencies	##列出服务的倚赖
systemctl	set-default multi-user.target	##设定系统启动级别为多用户模式(无图形)
systemctl	set-default grapical.target	##设定系统启动级别为图形界面

在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值