7.linux中的进程管理

一.进程

1.进程

程序是静态的代码文件
进程是指程序运行时的形态
进程是程序的一个副本
进程是有生命周期的(准备期,运行期,终止期)

2.进程和线程

进程是资源调用的最小单位
线程是进程的最小单位

程序执行流是从上到下贯穿运行的

当进程是多任务,cpu是多核心,多任务应该同时被每个核心处理,每个核心处理的任务叫线程,线程资源是共享的。

3.进程的状态

进程状态状态
R(TASKS_RUNNING)可执行状态(running,ready)
S(TASK_INTRRUPTABLE)可唤醒休眠
D(TASK_UNINTRRUPTABLE)不可唤醒状态
T(TASK_STOP)暂停状态
Z(EXIT_ZOMBIE)僵死态

二.进程查看命令

gnome-system-monitor #图形进程查看工具
ps #进程的查看

  • ps 命令的三种执行风格 unix bsd GNU
  • bsd风格
命令Value
a与终端相关的进程
x与终端无关的进程
u用户信息归类的查看方式
f进程层级关系
o显示指定参数 后跟pid,comm,nice,pri,papu,ppid,stat,user,group
  • unix风格
命令Value
-e显示所有进程(相当于上面的ax)
-f显示信息的完整格式
-eH-H
-o显示指定参数
–sort=排序(GNU风格)

ps ax -o %mem,comm --sort= -%mem | less #根据内存倒序排序,去掉-就是正序排序
在这里插入图片描述

  • ps ax显示信息如下
    在这里插入图片描述
显示Value
PID进程id
TTY进程用到的终端
STAT进程状态
TIME进程占用cpu时长
COMMAND进程名称
  • ps aux显示信息如下:
    在这里插入图片描述
显示Value
USER进程所有人
PID进程id
%CPU进程所使用cpu的用量
%MEM进程所用到的内存用量
VSZ进程使用的虚拟内存大小
RSS进程常驻内存中的数据大小
TTY进程用到的终端
STAT进程状态
START进程运行时长
TIME进程占用cpu时长
COMMAND进程名称
  • pgrep进程过滤
命令Value
pgrep -u uid显示指定用户进程
pgrep -U user显示指定用户进程
pgrep -t tty显示指定终端进程
pgrep -l user显示进程名称
pgrep -a user显示进程的完整名称
pgrep -P PID进程的子进程

在这里插入图片描述

  • pidof bash查看bash的pid
    在这里插入图片描述

  • top

top内部命令:

命令功能
PCPU排序
M内存排序
T累计cpu时间排序
l关闭/开启 uptime信息
t关闭/开启cpu&task
s指定刷新频率
k操作进程
u查看指定用户进程
#PID 进程id
#USER 进程所有者的用户名
#PR 优先级
#NI nice值,负值表示高优先级,正值表示低优先级
#VIRT  进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES
#RES 进程使用的、未被患处的物理内存大小,单位kb。RES=CODE+DATA
#SHR 共享内存大小,单位kb
#S 进程状态(D=不可中断的睡眠状态,R=运行,S=睡眠,T=跟踪/停止,Z=僵尸进程)
#%CPU 上次更新到现在的CPU时间占用百分比
#%MEM 进程使用的物理内存百分比
#TIME+ 进程使用的CPU时间总计,单位1/100s
#COMMAND  命令名/命令行

在这里插入图片描述

三.进程优先级

系统是多任务多用户的操作模式
任务的重要性是有区分的
如何确定任务的重要性
“优先级”
范围:0-139
内核自控优先级:0-99
用户可控优先级:100-139

nice:-20-19

renice -n -5 43331 #更改优先级
nice -n -5 vim & #指定优先级打开进程

ps—>pri----0-39
nice----------20-19
priority------0-139(100-139)

value含义
Ssleeping
<优先级高
s顶级进程
Tstop
N优先级低
Rrunning
+运行在前台

四.进程前后台调用

命令Value
ctrl+z把占用shell的进程打入后台挂起
bg把后台挂起的进程运行起来
fg把后台进程调回前台
&运行进程在后台
jobs查看当前shell中在后台的所有工作

在这里插入图片描述

五.进程信息号

1.进程信息号

数字Value
1重新加载系统配置文件(source)
2清空内存中的进程数据
3清空内存中的鼠标(ctrl+\)
9强行结束进程(不能被阻塞)
15正常关闭进程(会被阻塞)
18运行被暂停的进程
19暂停进程(不会被阻塞)
20暂停进程(会被阻塞)

2.进程信号控制工具

kill 进程信号 pid
killall 进程信号 进程名字
pkill 进程信号 进程条件
在这里插入图片描述

六.system守护进程

systemctl命令用法

命令Value
systemctl start ssh开启
systemctl stop ssh关闭
systemctl status ssh查看状态
systemctl reload ssh重新加载
systemctl restart ssh重新启动服务
systemctl enable ssh重新服务开机启动
systemctl enable --now ssh设定服务开机启动并当前开启服务
systemctl disable ssh设定服务开机不启动
systemctl list-units ssh查看系统所有服务当前状态
systemctl list-unit-files ssh查看服务开机状态
systemctl list-dependencies ssh列出服务依赖性
systemctl mask ssh冻结服务
systemctl unmask ssh解锁
systemctl set-default ssh设定系统运行模式(multi-user.target无图形网络模式;graphical-target有图形的网络模式)
systemctl get-default ssh查看系统运行模式(0-6)

在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值