Linux下的进程的管理

一、线程以及进程的解释

  1. 进程的定义:
    程序是静态的代码文件
    进程是程序运行时的一个副本
    进程是有生命周期的
  2. 线程&进程
    线程是程序的最小单位
    进程是资源调用的最小单位
  3. 进程状态的分类
    执行态R:分为runing即程序正在被执行,ready表示程序正在等待被执行
    不可唤醒的休眠 D: 表示程序在执行中缺少必要的条件无法被唤醒
    可唤醒的休眠S:可唤醒的休眠态表示程序在执行过程中资源加载时间过长,超过最大cpu占用时长
    暂停状态T:暂停状态一般为人为制造的,表示将程序暂停执行。
    僵死态Z:表示程序在执行过程中出现缺少必要条件即不可唤醒的休眠

二、进程的管理以及查看

  1. 图形查看方式
gonome-systemctl-monitor   ##使用图形界面打开进程管理器
  1. ps命令
ps   ##显示当前进程的信息
ps a   ##显示当前和当前终端相关的进程
ps x   ##显示和当前进程无关的进程
ps ax ##显示所有进程
ps -e ##显示所有进程
ps u   ##按照用户信息进行归类查看方式
ps f   ##按照进程的层级结构进行查看方式
ps -H   ##按照层级结构进行显示所有进程
ps o   ##查看进程的指定参数
ps -o   ##按照指定参数查看进程
ps ax --sort=%cpu ##表示使得全部进程按照cpu使用量进行升序的排序
ps ax --sort=-%cpu   ##表示使得全部进程按照cpu使用量进行倒序排列

ps ax ##显示的信息如下
pid   ##进程的id
TTY   ##进程使用到的终端
STAT   ##进程目前的状态
TIME   ##进程的开启时间
ps aux  ##显示如下
USER   ##进程的所有人
PID    ##进程的pid
TIME   ##进程的开启时间
START  ##进程的状态
TTY    ##进程使用的终端
COMMAND##进程的名称
VXZ    ##进程使用的虚拟内存大小
%CPU   ##进程的cpu使用量
%MEM   ##进程的内存使用量
RSS    ##内存中的常驻数据大小
STAT   ##进程的开启时间
  1. 进程的过滤
    进程的过滤需要使用管道符来进行过滤
ps ax | pgrep -u 8888   ##表示在所有进程中查找uid为8888的用户的进程并且输出
ps ax | pgrep -U westos ##表示在所有进程中查找名程为westos的用户的进程
ps ax | pgrep -l cat ##表示显示所有进程中的名字为cat的这个任务
ps ax | pgrep -t tty ##表示显示所有进程中使用tty终端的进程
ps ax | pgrep -aU westos ##表示显示用户westos的所有进程的完整名称
ps ax | pgrep -pU westos #表示显示用户westtos的完整进程同时将下级子进程显示出来 
但是pgrep命令无法显示vim的进程pid
pidof vim  ##表示显示vim的pid
  1. top动态进程的查看
    top命令的指令分为内部和外部指令
外部指令
top -b ##使用批次凡方式显示
top -n 3 ##指定刷新批次
top -d 2 ##指定刷新的频率

在这里插入图片描述

显示内容解释
第一行:系统开启时间、系统运行时长、系统中的用户、1分钟内的任务等待时长、5分钟内的任务等待时长、15分钟内的任务等待时长
第二行:系统当前进程总数、运行进程总数、可唤醒的休眠进程数、不可唤醒的休眠的进程、僵尸进程
第三行:用户cpu的使用量、内核空间、nice值调整时间、等待io时间、硬件中断时间、软件中段时间
第四行:当前内存总量、空闲内存总量、占用内存总量、缓存量
第五行:交换分区用量
top 的内部指令
s   ##更改刷新频率
P   ##按照cpu使用量进行排序
M   ##按照内存使用量进行排序
T   ##按照cpu占用时间进行排序
l   ##开启系统负载信息
t   ##开启和关闭系统cpu的占用时间
K   ##操作进程即发送进程的信号
u   ##按照用户的进程操作
  1. 进程的优先级
    进程的优先级表程序的重要性,即在多任务的情况下任务是否会优先执行该命令
    进程的优先级范围
0-139
内核自控范围:0-99
用户可控范围:100-193
nice值范围
-20到20
数值越小范围优先级越高
renice -n -5 77777 ##表示将进程77777的优先级更改为-5级
nice -n -5 cat ##表示以-5级的优先级运行cat这个命令

进程优先级的表示

S  ##表示该进程为可唤醒的休眠态Sleeping
s  ##表示为顶级进程
<  ##表示进程优先级较高
T  ##表示该进程为暂停状态
N  ##表示为优先底层程序
R  ##表示为执行态进程
+  ##表示该程序在前台运行
  1. 进程的前后太调用
将进程切回后台的快捷键
<ctrl>+z   ##将当前在前台的程序切换回后台运行
jobs   ##显示当前shell的后台运行的脚本
fg   ##将后台的脚本调回到前台运行
bg   ##将后台程序已经暂停的运行起来
&    ##表示将该命令打入后台运行
  1. 进程的信号
1   ##重读配置文件
2   ##清空当前进程的数据
3   ##清空内存中的鼠标
9   ##强行结束进程不会被阻塞
15  ##结束进程但是会被阻塞
18  ##运行暂停的进程
19  ##暂停进程不会被阻塞
20  ##暂停进程会被阻塞
kill 9 7777   ##表示将进程7777强制结束
kill 15 7777  ##表示将进程的7777结束
kill 18 7777  ##使得进程在后台自动运行但是如果缺少条件的话会自动进入休眠
kill 19 7777  ##使得进程7777在后台暂停
  1. 进程的手护
systemctl status ssh  ##表示查看ssh这个服务的列表内容
systemctl sart ssh  ##表示开启ssh这个服务
systmectl stop ssh  ##表示关闭ssh这个服务
systemctl reloader ssh  ##表示重新加载这个服务的配置文件,不改变进程的编号可以更该进程的配置
systemctl restart ssh  ##表示重新开启ssh这个服务,实际过程就是关闭在开启但是进程改变了
systemctl enable ssh  ##表示ssh这个服务开机自启这个服务
systemctl disable ssh  ##表示这个服务开机不进行自启
systemctl enable --now ssh  ##表示这个服务被设置为开机自启的同时,将ssh这个服务直接开启
systemctl list-units  ##表示显示所有服务的依赖性
systemctl list-units-files  ##查看所有服务的开机状态
systemctl mask ssh  ##表示冻结ssh这个服务
systemctl unmask ssh  ##表示解冻ssh这个服务
systemctl set-default mulit-user.target  ##设置操做模式为无图形的网络模式
systemctl set-default graphial.target  ##设置操作模式为有图形的网络模式
systemctl get-default  ##查看操作系统的运行模式
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值