当前位置: 首页 > news >正文

linux 进程管理命令

进程管理命令

查看进程命令

ps命令

显示系统上运行的进程列表

# 查看系统中所有正在运行的系统
ps aux

#
 获取占用内存资源最多的10个进程,可以使用如下命令组合:
ps aux|head -1;ps aux|grep -v PID|sort -rn -k +4|head
# 获取占用CPU资源最多的10个进程,可以使用如下命令组合:
ps aux|head -1;ps aux|grep -v PID|sort -rn -k +3|head



------------
a  显示所有用户的所有进程,除了会话引线
u  显示进程的归属用户及内存的使用情况,按照用户名和启动时间顺序显示
x  显示没有控制终端的进程
-e  显示系统中所有的进程
-f  显示进程间关系
-H  显示树状结构
-r  显示当前终端的程序
-T  显示当前终端的所有程序
-p  根据进程ID显示对应的信息
-A 简明查看系统启动的所有进程
aux 显示所有用户所有进程的详细信息


ps -ef


显示的内容

ps命令结果
ps命令结果
  • USER 哪个用户产生的
  • PID 进程的ID号
  • %CPU 该进程占用CPU资源的百分比
  • %MEM 该进程占用物理内存的百分比
  • VSZ 该进程占用虚拟内存的大小,单位KB
  • RSS 该进程占用实际物理内存的大小,单位KB
  • TTY 该进程是在哪个终端中运行的。tty1-tty7代表本地控制台终端,tty1-tty6是本地字符界面终端,tty7是图形终端。pts/0-255代表虚拟终端,一般是远程连接的终端,第一个远程连接占用的是pts/0终端,依次递增,?表示由内核直接启动的,是系统进程
  • STAT 进程状态。
    • D表示不可唤醒的睡眠状态,通常用于I/O情况
    • R表示进程正在进行
    • S表示进程在睡眠状态,可被唤醒
    • T表示停止状态,可能是在后台暂停或进程在出错状态
    • W表示内存交互状态
    • X表示死掉的进程
    • Z表示僵尸进程。进程已经终止,但是部分程序还在内存当中
    • <表示高优先级
    • N表示低优先级
    • L表示被锁入内存
    • s表示饱汉子进程
    • l表示多线程
    • +表示位于后台
  • START 该进程的启动时间
  • TIME 该进程占用CPU的运算时间
  • COMMAND 产生此进程的命令

top命令

实时对系统处理器状态进行监控

top -p  1298

-------
选项
-p  只查看某个PID
-b  分屏显示输出信息,结合-n可以把数据可以写入文件
-n  刷新几次
-d  指定刷新间隔
-i  不显示闲置的进程信息
-c  显示进程的整个命令路径





------
交互选项
P  按照CPU排序,默认
M  按照内存使用率排序
N  按照PID排序
k  终止一个进程,提示用户输入一个需要终止进程的pid
i  忽略闲置进程
s  改变top刷新间隔
o  改变输出信息中显示项目的顺序。按小写的a~z键可以将相应的列向右移动,按大写的A~Z键可以将相应的列向左移动。回车确认
c  显示完整命令行
q  退出top命令

默认情况下,top是按照进程来显示CPU消耗情况的,按 SHIFT+H 可以按照线程来查看CPU的消耗情况

显示的内容

top命令结果
top命令结果

第一行是任务队列信息,返回信息与uptime类似,系统当前时间、系统运行了多长时间、有多少用户正在使用该系统、系统每隔1分钟、5分钟、15分钟的平均负载

第二行是进程统计信息,分别为总数、正在运行的数量、睡眠的数量、停止的数量、僵尸数

第三行 %Cpu一行中展示的是cpu的使用情况

  • us (User time)表示用户进程占用的时间
  • sy (System time)表示系统进程占用的时间 us+sy一般合理值是在60-85%,超过85则会影响吞吐量
  • ni (Nice time)表示系统花费在调整进程优先级上的时间
  • id (Idle time)一般大于40,表示CPU空闲时间,id经常小于40,表示cpu的负荷很重
  • wa (Waiting time)一般应小于25%,表示用于等待IO完成的CPU时间,超过25%的wa的值可以表示子系统可能没有被正确平衡,也可能是磁盘密集工作负载的结果,系统的磁盘或其它I/o可能有问题,可以通过iostat/SAR –C命令进一步分解分析
  • hi (Hardirq time)表示处理硬件中断的CPU时间
  • si (Softirq time)表示处理软件中断的CPU时间
  • st (Steal time)表示当前CPU被强制(involuntary wait )等待另外虚拟的CPU处理完毕时花费的时间,此时 hypervisor 在为另一个虚拟处理器服务

最下边一栏是进程信息区

  • PR 进程优先级
  • VIRT 进程使用的虚拟内存总量。VIRT=SWAP+RES
  • RES 进程使用的、未被换出的物理内存大小。RES=CODE+DATA
  • SHR 共享内存大小
  • S 进程状态,D表示不可中断的睡眠状态,R表示运行状态,S表示睡眠状态,T表示跟踪/停止,Z表示僵死进程

如果想查看每个CPU的利用率,可以按1来查看每个cpu核的利用率了

pstree命令

可以查看到依赖关系

pstree -aup

-a  显示每个程序的完整指令,包括路径,参数
-c  不使用精简标示法
-G  使用VT100终端机的列绘图字符
-h  列出树状图时,特别标明现在执行的程序
-H 程序识别码   此参数的效果与-h参数类似,但特别标注指定的程序
-l  采用长列格式显示树状图
-n  用程序识别码排序
-p  显示程序识别码
-u  显示用户名称

pmap命令

显示进程调用的各种库分别占用内存的情况,可以看到所有内存地址的详细信息,而且还显示了启动进程的命令

# 通过进程id来查找
pmap -d 133872

mpstat命令

显示多处理器系统的CPU使用率,这些信息存放在/proc/stat文件中 mpstat命令结果

杀死进程命令

#强制关闭指定进程
kill -9 pid

#
 关闭指定进程
kill pid 

#
 关闭服务的所有进程
killall 服务名

#
 强制关闭服务的所有进程
killall -9 服务名

pidstat命令

指令
# -w 进程的上下文切换
# -d 进程IO
# -r 进程内存使用
# -u 进程cpu使用



#
 cswch/s 是让步式上下文切换
pidstat -w

UID  PID   cswch/s nvcswch/s  Command

#
 5s一次监控进程pid为2213
pidstat -w -I -p 2213 5

#
 监控进程pid的ip的io
pidstat -d -p 2213
UID       PID   kB_rd/s   kB_wr/s kB_ccwr/s  Command

进程内存文件

linux中,在/proc/{pid}目录下存储指定进程的相关信息,其中/proc/{PID}/smaps 文件中记录着当前进程所对应的内存映像信息,可以通过该信息查询指定进程的swap使用情况

cat /proc/15812/smaps | grep Swap

https://zhhll.icu/2021/linux/日常管理/进程管理命令/

本文由 mdnice 多平台发布

相关文章:

linux 进程管理命令

进程管理命令 查看进程命令 ps命令 显示系统上运行的进程列表 # 查看系统中所有正在运行的系统ps aux# 获取占用内存资源最多的10个进程&#xff0c;可以使用如下命令组合&#xff1a;ps aux|head -1;ps aux|grep -v PID|sort -rn -k 4|head# 获取占用CPU资源最多的10个进程&am…...

第一章:计算机网络和因特网

什么是因特网 具体构成描述 互联网是一个世界范围的计算机网络&#xff0c;即一个互联了遍及世界数十亿计算机设备的网络&#xff0c;这些被连接的设备被称为主机或者端系统。端系统通过通信链路&#xff08;communication link&#xff09;和分组交换机&#xff08;packet s…...

Android后退堆栈

修改代码 现在的ItemClick使得用户单击其中一个项目时就会跳转&#xff0c;现在要修改其使得在一个小屏幕设备上才会这样做&#xff0c;在一个大屏幕设备上运行用户选择一个训练项目时在右边的片段显示响应的信息。 希望片段处理后退的方式&#xff1a;假设用户在手机上运行这…...

网络原理(一)网络基础,包括IP ,网络相关的定义

网络基础&#xff0c;包括IP &#xff0c;网络相关的定义 网络基础冲突域广播域DNSNATNAPT 网络基础 以下图片是书上的网图。 什么是IP地址&#xff1f; IP地址&#xff08;Internet Protocol Address&#xff09;是指互联网协议地址&#xff0c;又译为网际协议地址。P地址是…...

Python语义分割与街景识别(2):环境搭建

前言 本文主要用于记录我在使用python做图像识别语义分割训练集的过程&#xff0c;由于在这一过程中踩坑排除BUG过多&#xff0c;因此也希望想做这部分内容的同学们可以少走些弯路。 本文是python语义分割与街景识别的第二篇&#xff0c;关于环境搭建的内容。这个部分是整个流…...

stm32(GD32,apm32),开优化后需要特别注意的地方

提到优化就不得不提及 volatile 使用场景 1&#xff1a;中断服务程序中修改的供其它程序检测的变量&#xff0c;需要加volatile&#xff1b; : 2&#xff1a;多任务环境下各任务间共享的标志&#xff0c;应该加volatile&#xff1b; 3&#xff1a;并行设备的硬件寄存器&#x…...

LLVM 与代码混淆技术

项目源码 什么是 LLVM LLVM 计划启动于2000年&#xff0c;开始由美国 UIUC 大学的 Chris Lattner 博士主持开展&#xff0c;后来 Apple 也加入其中。最初的目的是开发一套提供中间代码和编译基础设施的虚拟系统。 LLVM 命名最早源自于底层虚拟机&#xff08;Low Level Virtu…...

R语言---使用runway进行机器学习模型性能的比较

R语言—使用runway进行机器学习模型性能的比较 #dataloadrm(list=ls())#librarylibrary(dcurves)library(gtsummary)library(tidyverse)library(mlr3verse)library(tidyverse)library(data.table)</...

C++斩题录|递归专题 | leetcode50. Pow(x, n)

个人主页&#xff1a;平行线也会相交 欢迎 点赞&#x1f44d; 收藏✨ 留言✉ 加关注&#x1f493;本文由 平行线也会相交 原创 收录于专栏【手撕算法系列专栏】【LeetCode】 &#x1f354;本专栏旨在提高自己算法能力的同时&#xff0c;记录一下自己的学习过程&#xff0c;希望…...

详解Redis之Lettuce实战

摘要 是 Redis 的一款高级 Java 客户端&#xff0c;已成为 SpringBoot 2.0 版本默认的 redis 客户端。Lettuce 后起之秀&#xff0c;不仅功能丰富&#xff0c;提供了很多新的功能特性&#xff0c;比如异步操作、响应式编程等&#xff0c;还解决了 Jedis 中线程不安全的问题。 …...

【3】单着色器文件读取

Basic.shader文件&#xff0c;可以发现顶点着色器和片段着色器是写在一个文件里的&#xff0c;这里我们将他们读取出来&#xff0c;而不是上一篇使用string的方式。 #shader vertex #version 330 corelayout(location 0) in vec4 position;void main() {gl_Position positio…...

祝贺埃文科技入选河南省工业企业数据安全技术支撑单位

近日&#xff0c;河南省工业信息安全产业发展联盟公布了河南省工业信息安全应急服务支撑单位和河南省工业企业数据安全技术支撑单位遴选结果,最终评选出19家单位作为第一届河南省工业信息安全应急服务支撑单位和河南省工业企业数据安全技术支撑单位。 埃文科技凭借自身技术优势…...

Chinese-LLaMA-Alpaca-2模型的测评

训练生成效果评测 Fastchat Chatbot Arena推出了模型在线对战平台&#xff0c;可浏览和评测模型回复质量。对战平台提供了胜率、Elo评分等评测指标&#xff0c;并且可以查看两两模型的对战胜率等结果。生成回复具有随机性&#xff0c;受解码超参、随机种子等因素影响&#xff…...

SLAM论文详解(5) — Bundle_Adjustment_LM(BALM)论文详解

目录 1 摘要 2 相关工作 3 BA公式和导数 A. 直接BA公式 B. 导数 C. 二阶近似 4 自适应体素化 5. 将BALM结合进LOAM 6. 实验 7. 算法应用场景解析 1 摘要 Bundle Adjustment是一种用于同时估计三维结构和传感器运动运动的优化算法。在视觉SLAM&#xff0c;三维重建等…...

C语言对单链表所有操作与一些相关面试题

目录 单链表的特性 单链表的所有操作 定义一个单链表 创建一个链表头 插入数据(头插法) 插入数据(尾插法) 查找节点 修改数据节点 删除节点 打印数据 销毁链表 翻转链表 打印链表长度 冒泡排序 快排 堆排 查找倒数第K个节点&#xff08;双指针法&#xff09; …...

高防服务器如何抵御大规模攻击

高防服务器如何抵御大规模攻击&#xff1f;高防服务器是一种专门设计用于抵御大规模攻击的服务器&#xff0c;具备出色的安全性和可靠性。在当今互联网时代&#xff0c;网络安全问题日益严重&#xff0c;DDOS攻击&#xff08;分布式拒绝服务攻击&#xff09;等高强度攻击已成为…...

Go 接口和多态

在讲解具体的接口之前&#xff0c;先看如下问题。 使用面向对象的方式&#xff0c;设计一个加减的计算器 代码如下&#xff1a; package mainimport "fmt"//父类&#xff0c;这是结构体 type Operate struct {num1 intnum2 int }//加法子类&#xff0c;这是结构体…...

Git忽略文件的几种方法,以及.gitignore文件的忽略规则

目录 .gitignore文件Git忽略规则以及优先级.gitignore文件忽略规则常用匹配示例&#xff1a; 有三种方法可以实现忽略Git中不想提交的文件。1、在Git项目中定义 .gitignore 文件&#xff08;优先级最高&#xff0c;推荐&#xff01;&#xff09;2、在Git项目的设置中指定排除文…...

C语言——指针进阶(2)

继续上次的指针&#xff0c;想起来还有指针的内容还没有更新完&#xff0c;今天来补上之前的内容&#xff0c;上次我们讲了函数指针&#xff0c;并且使用它来实现一些功能&#xff0c;今天我们就讲一讲函数指针数组等内容&#xff0c;废话不多说&#xff0c;我们开始今天的学习…...

【汇编中的寄存器分类与不同寄存器的用途】

汇编中的寄存器分类与不同寄存器的用途 寄存器分类 在计算机体系结构中&#xff0c;8086CPU&#xff0c;寄存器可以分为以下几类&#xff1a; 1. 通用寄存器&#xff1a; 通用寄存器是用于存储数据和执行算术运算的寄存器。在 x86 架构中&#xff0c;这些通用寄存器通常包括…...

【根据当天日期输出明天的日期(需对闰年做判定)。】2022-5-15

缘由根据当天日期输出明天的日期(需对闰年做判定)。日期类型结构体如下&#xff1a; struct data{ int year; int month; int day;};-编程语言-CSDN问答 struct mdata{ int year; int month; int day; }mdata; int 天数(int year, int month) {switch (month){case 1: case 3:…...

脑机新手指南(八):OpenBCI_GUI:从环境搭建到数据可视化(下)

一、数据处理与分析实战 &#xff08;一&#xff09;实时滤波与参数调整 基础滤波操作 60Hz 工频滤波&#xff1a;勾选界面右侧 “60Hz” 复选框&#xff0c;可有效抑制电网干扰&#xff08;适用于北美地区&#xff0c;欧洲用户可调整为 50Hz&#xff09;。 平滑处理&…...

椭圆曲线密码学(ECC)

一、ECC算法概述 椭圆曲线密码学&#xff08;Elliptic Curve Cryptography&#xff09;是基于椭圆曲线数学理论的公钥密码系统&#xff0c;由Neal Koblitz和Victor Miller在1985年独立提出。相比RSA&#xff0c;ECC在相同安全强度下密钥更短&#xff08;256位ECC ≈ 3072位RSA…...

突破不可导策略的训练难题:零阶优化与强化学习的深度嵌合

强化学习&#xff08;Reinforcement Learning, RL&#xff09;是工业领域智能控制的重要方法。它的基本原理是将最优控制问题建模为马尔可夫决策过程&#xff0c;然后使用强化学习的Actor-Critic机制&#xff08;中文译作“知行互动”机制&#xff09;&#xff0c;逐步迭代求解…...

从零开始打造 OpenSTLinux 6.6 Yocto 系统(基于STM32CubeMX)(九)

设备树移植 和uboot设备树修改的内容同步到kernel将设备树stm32mp157d-stm32mp157daa1-mx.dts复制到内核源码目录下 源码修改及编译 修改arch/arm/boot/dts/st/Makefile&#xff0c;新增设备树编译 stm32mp157f-ev1-m4-examples.dtb \stm32mp157d-stm32mp157daa1-mx.dtb修改…...

C# SqlSugar:依赖注入与仓储模式实践

C# SqlSugar&#xff1a;依赖注入与仓储模式实践 在 C# 的应用开发中&#xff0c;数据库操作是必不可少的环节。为了让数据访问层更加简洁、高效且易于维护&#xff0c;许多开发者会选择成熟的 ORM&#xff08;对象关系映射&#xff09;框架&#xff0c;SqlSugar 就是其中备受…...

css3笔记 (1) 自用

outline: none 用于移除元素获得焦点时默认的轮廓线 broder:0 用于移除边框 font-size&#xff1a;0 用于设置字体不显示 list-style: none 消除<li> 标签默认样式 margin: xx auto 版心居中 width:100% 通栏 vertical-align 作用于行内元素 / 表格单元格&#xff…...

Typeerror: cannot read properties of undefined (reading ‘XXX‘)

最近需要在离线机器上运行软件&#xff0c;所以得把软件用docker打包起来&#xff0c;大部分功能都没问题&#xff0c;出了一个奇怪的事情。同样的代码&#xff0c;在本机上用vscode可以运行起来&#xff0c;但是打包之后在docker里出现了问题。使用的是dialog组件&#xff0c;…...

【SSH疑难排查】轻松解决新版OpenSSH连接旧服务器的“no matching...“系列算法协商失败问题

【SSH疑难排查】轻松解决新版OpenSSH连接旧服务器的"no matching..."系列算法协商失败问题 摘要&#xff1a; 近期&#xff0c;在使用较新版本的OpenSSH客户端连接老旧SSH服务器时&#xff0c;会遇到 "no matching key exchange method found"​, "n…...

MFC 抛体运动模拟:常见问题解决与界面美化

在 MFC 中开发抛体运动模拟程序时,我们常遇到 轨迹残留、无效刷新、视觉单调、物理逻辑瑕疵 等问题。本文将针对这些痛点,详细解析原因并提供解决方案,同时兼顾界面美化,让模拟效果更专业、更高效。 问题一:历史轨迹与小球残影残留 现象 小球运动后,历史位置的 “残影”…...