Linux——(第十章)进程管理

news2024/12/22 19:07:29

目录

一、概述

二、常用指令

1.ps查看当前系统进程状态

2.kill 终止进程

3.pstree 查看进程树

4.top 实时监控系统进程状态

5.netstat 监控网络状态


一、概述

(1)进程是正在执行的一个程序或命令,每一个进程都是一个运行的实体,都有自己的地址空间,并占用一定的系统资源。在LINUX中,每个执行的程序都称为一个进程。每一个进程都分配一个ID号。

(2)每一个进程,都会对应一个父进程,而这个父进程可以复制多个子进程。

(3)每个进程都可能以两种方式存在,前台与后台。所谓前台进程就是用户目前的屏幕上可以进行操作的,后台进程则是实际操作的,但由于是屏幕上无法看到的进程,通常使用后台方式执行[sshd、crond]。

(4)一般系统的服务都是以后台进程的方式存在,而且都会常驻在系统中。

二、常用指令

1.ps查看当前系统进程状态

ps  aux  |  grep  xxx         // 查看系统中所有进程

ps  -ef  |  grep  xxx         // 可以查看子父进程之间的关系

选项说明

选项功能
a列出带有终端的所有用户的进程
x列出当前用户的所有进程,包括没有终端的进程
u面向用户友好的显示
-e列出所有进程
-u列出某个用户关联的所有进程
-f显示完整格式的进程列表

特别的:

        如果想查看进程的CPU占用率和内存占用率,可以使用aux。

        如果想查看进程的父进程ID可以使用-ef。 

# ps aux     如下图所示:

ps aux 显示说明

USER该进程是由哪个用户产生的
PID进程的ID号
%CPU该进程占用CPU资源的百分比,占用越高,进程越耗费资源
%MEN该进程占用物理内存的百分比,占用越高,进程越消耗资源
VSZ该进程占用虚拟内存的大小,单位KB
RSS该进程占用实际物理内存的大小,单位KB
TTY该进程是在哪个终端中运行的。
STAT进程状态。常见的状态有:R:运行状态  S:睡眠状态  T:暂停状态  Z:僵尸状态  s:包含子进程  l:多线程  +:前台显示
START该进程的启动时间
TIME该进程占用CPU的运算时间,注意不是系统时间
COMMAND产生此进程的命令名

# ps -ef      如下图所示:

 ps -ef 显示说明

UID用户ID
PID进程ID
PPID父进程ID
CCPU用于计算执行优先级的因子。数值越大,表明进程是CPU密集型运算,执行优先级会降低;数值越小,表明进程是I/O密集型运算,执行优先级会提高
STIME进程启动的时间
TTY完整的终端名称
TIMECPU时间
CMD启动进程所用的命令和参数

2.kill 终止进程

kill  [选项]  进程号        // 通过进程号杀死进程

killall  进程名称        // 通过进程名称杀死进程,也支持通配符

选项说明

选项功能
-9表示强迫进程立即停止

3.pstree 查看进程树

pstree  [选项]       

选项说明

选项功能
-p显示进程PID
-u显示进程的所属用户

4.top 实时监控系统进程状态

top  [选项]

选项说明

选项功能
-d 秒数指定top命令每隔几秒更新。默认3秒
-i 使top不显示任何闲置或者僵死进程
-p通过指定监控进程ID来仅仅监控某个进程的状态

操作说明

操作功能
P以CPU使用率排序,默认就是此项
M以内存的使用率排序
N以PID排序
q退出top

top输出结果

显示说明(前五行)

内容说明
第一行信息为任务队列信息11:52:17系统当前时间
up 2:52系统运行时间
1 user当前登录的用户数
load average :16.01,16.03,15.22系统在之前1分钟,5分钟,15分钟的平均负载。
第二行为进程信息234 total系统中的进程总数
3 running正在运行的进程数
231 sleeping睡眠的进程
0 stopped正在停止的进程
0 zombie僵尸进程,如果不是0 ,需要手工检查僵尸进程
第三行为CPU信息98.7 us用户模式占用的CPU百分比
1.3 sy系统模式占用的CPU百分比
0.0 ni改变过优先级的用户进程占用的CPU百分比
0.0 id空闲CPU的CPU百分比
0.0 wa等待输入/输出的进程的占用CPU百分比
0.0 hi硬中断请求服务占用的CPU百分比
0.0 si软中断请求服务占用的CPU百分比
0.0 st虚拟时间百分比,就是当有虚拟机时,虚拟CPU等待实际CPU的时间百分比
第四行为物理内存信息125806.3 total物理内存的总量,单位KB
103724.5 free空闲的物理内存数量
7803.7 used已经使用的物理内存数量
14278.1 buff/cache作为缓冲的内存数量
第五行为交换分区信息0.0 total交换分区(虚拟内存)的总大小
0.0 free已经使用的交换分区的大小
0.0 used空闲交换分区的大小
116800.2 avail Men作为缓存的交换分区的大小

5.netstat 监控网络状态

netstat  [选项]        // 查看系统网络情况

netstat  -anp  |  grep  进程号        // 查看该进程网络信息

netstat  -nlp  |  grep  端口号        // 查看网络端口号占用情况

选项说明

选项功能
-a显示所有正在监听(listen)和未监听的套接字
-n拒绝显示别名,能显示数字的全部转化成数字
-l 仅列出在监听的服务状态
-p表示显示哪个进程在调用

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1010345.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Redis 常用命令

目录 全局命令 1)keys 2)exists 3) del(delete) 4)expire 5)type SET命令 GET命令 MSET 和 MGET命令 其他SET命令 计数命令 redis-cli,进入redis 最核心的命令:我们这里只是先介绍 set 和 get 最简单的操作…

IP地址,子网掩码,默认网关,DNS讲解

IP地址:用来标识网络中一个个主机,IP有唯一性,即每台机器的IP在全世界是唯一的。 子网掩码:用来判断任意两台计算机的ip地址是否属于同一子网络的根据。最为简单的理解就是两台计算机各自的ip地址与子网掩码进行and运算后&#x…

常用排序算法

一、插入排序1、直接插入排序2、折半插入排序3、希尔排序 二、交换排序1、冒泡排序2、快速排序 三、选择排序1、简单选择排序2、堆排序(1)调整堆(2)创建堆 四、归并排序五、基数排序六、各种排序方法的比较 将一组杂乱无章的数据按…

Zookeeper应用场景和底层设计

一、什么是zookeeper Zookeeper是一个开源的分布式协调服务框架,它是服务于其它集群式框架的框架。 【简言之】 有一个服务A,以集群的方式提供服务。只需要A专注于它提供的服务就可以,至于它如何以多台服务器协同完成任务的事情&#xff0c…

9.14号作业

仿照vector手动实现自己的myVector&#xff0c;最主要实现二倍扩容功能 有些功能&#xff0c;不会 #include <iostream>using namespace std; //创建vector类 class Vector { private:int *data;int size;int capacity; public://无参构造Vector(){}//拷贝构造Vector(c…

2023年最新 Nonobot2 制作QQ聊天机器人详细教程(每周更新中)

协议端 go-cqhttp 安装 使用 mirai 以及 MiraiGo 开发的 cqhttp golang 原生实现&#xff0c;并在 cqhttp 原版 的基础上做了部分修改和拓展。 测试版下载地址&#xff1a;https://github.com/Mrs4s/go-cqhttp/releases 正式版下载地址&#xff1a;https://github.com/Mrs4s…

广义表基础知识

广义表 (又称列表 Lists)是 n > 0个元素 . a0,a1....an-1的有限序列&#xff0c;其中每一个 ai 或者是原子&#xff0c;或者是一个广义表 广义表通常记作: LS (a1&#xff0c;a2&#xff0c;.....&#xff0c;an&#xff09;&#xff0c; LS为表名&#xff0c;n为表的长度&…

使用 LoRA 和 QLoRA 对大型语言模型进行参数高效的微调

概述 随着我们深入研究参数高效微调 (PEFT) 的世界,了解这种变革性方法背后的驱动力和方法变得至关重要。在本文中,我们将探讨 PEFT 方法如何优化大型语言模型 (LLM) 对特定任务的适应。我们将揭开 PEFT 的优点和缺点,深入研究 PEFT 技术的复杂类别,并破译两种卓越技术的内…

SpingMyc项目如何搭建

目录 一、创建项目 二、环境搭建 &#xff08;1&#xff09;引入相关依赖 &#xff08;2&#xff09;在web.xml中配置前端控制器DispatcherServlet &#xff08;3&#xff09;编写SpringMVC核心配置文件springmvc.xml 三、测试是否成功 &#xff08;1&#xff09;编写控…

Java反射机制简单入门

标题 反射能干嘛获取Class对象的三种方式下面开始重点&#xff0c;需要掌握获取类的构造器并进行操作获取成员变量获取成员方法 这块建议先听第一个视频入门&#xff0c;第二个视频深入了解 视频学习地址1 视频学习地址1 正射:知道某个类&#xff0c;类的地址&#xff0c;通过…

在Linux和Windows上安装分布式事务seata

1 前言 官网地址&#xff1a;https://seata.io/ 源码地址&#xff1a;https://github.com/seata/seata 官网手册&#xff1a;https://seata.io/zh-cn/docs/ops/deploy-guide-beginner.html Seata&#xff0c;一款开源的分布式事务解决方案&#xff0c;致力于提供高性能和简…

软件设计模式系列之五——建造者模式

1 模式的定义 建造者模式是一种对象创建型设计模式&#xff0c;它将一个复杂对象的构建过程与其表示分离。这意味着你可以使用相同的构建过程来创建不同类型的对象&#xff0c;而不必关心每个对象的内部细节。这种模式适用于构建具有复杂配置的对象&#xff0c;例如具有多个可…

查看selenium具体版本的方法

1、 查看自己selenium版本 方法一&#xff1a; 本机进入CMD 在cmd窗口中输入 pip show selenium如果是在Pycharm中直接安装的selenium。则有可能会有如下提示。那么请尝试方法二。 方法二&#xff1a; 在pycharm中查看selenium版本 步骤一&#xff1a;在pycharm里打开命…

SpringMVC系列(五)之JSR303和拦截器

目录 一. JSR303 1.1 JSR303是什么 1.2 为什么要使用JSR303 1.3 JSR303常用注解 1.4 JSR303快速入门 1. 导入相关pom依赖 2. 配置校验规则 3. 入门示例 二. SpringMVC的拦截器 2.1 什么是拦截器 2.2 拦截器与过滤器的区别 2.3 拦截器工作原理 2.4 入门示例 1. 创建…

Gin路由中间件详解

什么是中间件 Gin 中的中间件必须是一个 gin.HandlerFunc 类型,配置路由的时候可以传递多个 func 回调函 数, 最后一个 func 回调函数前面触发的方法 都可以称为中间件。 中间件操作演示 方法一: 直接写在func,回调函数内 r.GET("/middle",func(ctx *gin.Cont…

Pytorch中张量矩阵乘法函数(mm, bmm, matmul)使用说明,含高维张量实例及运行结果

Pytorch中张量矩阵乘法函数使用说明 1 torch.mm() 函数1.1 torch.mm() 函数定义及参数1.2 torch.bmm() 官方示例 2 torch.bmm() 函数2.1 torch.bmm() 函数定义及参数2.2 torch.bmm() 官方示例 3 torch.matmul() 函数3.1 torch.matmul() 函数定义及参数3.2 torch.matmul() 规则约…

黑马头条 热点文章实时计算、kafkaStream

热点文章-实时计算 1 今日内容 1.1 定时计算与实时计算 1.2 今日内容 kafkaStream 什么是流式计算kafkaStream概述kafkaStream入门案例Springboot集成kafkaStream 实时计算 用户行为发送消息kafkaStream聚合处理消息更新文章行为数量替换热点文章数据 2 实时流式计算 2…

【C++】哈希思想的应用——位图、布隆过滤器和哈希切割

前言&#xff1a; 前面我们学习了unordered_map和unordered_set和哈希表哈希桶等&#xff0c;并且我们自己用哈希桶封装了unordered_map和unordered_set。我们知道哈希的查找效率非常高为O(1)&#xff0c;本章我们将延续哈希的思想&#xff0c;共同学习哈希的应用。 目录 &am…

sh脚本工具集锦(文件批量操作、音视频相关)持续更新

1 文件夹目录下所有图片转换成视频文件 pic_2_videos.sh&#xff1a; #!/bin/bash # 放到图片文件夹目录下&#xff0c;把所有jpeg图片推成视频文件 # sh pic_2_videos.sh 0 # 0: pad to 1920*1080 ; 1 or other no pad pad_1920$1if [[ $pad_1920 0 ]] thenfilesls|grep jp…

【Flink】 FlinkCDC读取Mysql( DataStream 方式)(带完整源码,直接可使用)

简介: FlinkCDC读取Mysql数据源,程序中使用了自定义反序列化器,完整的Flink结构,开箱即用。 本工程提供 1、项目源码及详细注释,简单修改即可用在实际生产代码 2、成功编译截图 3、自己编译过程中可能出现的问题 4、mysql建表语句及测试数据 5、修复FlinkCDC读取Mys…