Linux 进程 内存 等命令

linux之pmap命令查看进程的地址空间和占用的内存 1 问题 我们怎么知道进程占用的内存多大 2 我们可以使用pmap命令 pmap命令用于显示一个或多个进程的内存状态,报告进程的地址空间和内存状态信息。 一般使用 pmap pid 一般参数选项如下 -x extended显示扩展格式 -d device显示设备格式 -q quiet不显示header/footer行 -V 显示版本信息 我们先用top... 阅读详情
  1. 知识点:进程管理,ps、top、htop;kill、pkill;CPU、内存指标识别

  2. 实操:查看所有进程,找出CPU占用最高的进程,模拟杀掉后台进程

  3. 面试题:服务器CPU使用率100%,你怎么排查? 标准答案:先用top定位占用最高的进程PID,查看进程是业务程序还是异常进程,查看程序日志分析死循环、频繁GC等原因。

一、进程基础概念

1.进程定义:操作系统资源分配最小位,拥有独立内存、CPU、文件描述符;线程是调度单位,一个进程可包含多个线程

2.进程状态:

  • R:运行态,正在CPU执行/等待CPU调度
  • S:可中断休眠,等待资源(IO、信号),可被信号唤醒
  • D:不可中断休眠,磁盘IO 阻塞,kill无法杀死
  • Z:僵尸进程,子进程结束父进程未回收,占用PID
  • T:停止态,被Ctrl+z暂停或收到stop信号

3.PID/PPID:进程ID、父进程ID;init/systemd(POID=1)系统一号进程,所有进程祖先

4.前台进程/后台进程

  • 前台:占用中断,Ctrl+c终止
  • 后台:&启动,脱离终端输入,输出仍打印;nohup/screen实现持久后台

5.进程优先级:nice值(-20~19,越小优先级越高),top可查看NI列

二、进程查看工具:ps、top、htop

1.ps静态进程快照(一次性查看)

基础参数

  • ps aux : 展示所有用户全部进程

             字段解析

                USER :运行用户

                PID :进程号  

                %CPU:CPU占比  

                %MEM:内存占比 

                VSZ:虚拟内存 

                RSS:物理内存 

                TTY:中断 

                STAT:进程状态

                START:启动时间

                TIME:累计CPU运行时间

                COMMAND:启动命令

  • ps -ef : 全格式进程树,带PPID 父进程ID
  • ps aux --sort=-%cpu:按CPU占用降序排序,快速找高负载进程
  • ps aux --sort=-%mem:按内存占用降序

拓展过滤用法

  • ps aux |grep 进程名
  • pgrep 进程名:只输出对应PID,配合kill使用
  • ps -T -p PID :查看进程内所有线程(排查多线程CPU爆满)

2.top动态实时监控(系统自带,无需安装)

顶部系统全局指标(CPU / 内存核心识别,重点)

  • 第一行:运行时长,系统负载

        load avera:0.00,0.02,0.02  ---- 1/5/15分钟平均活跃进程数

        判定:CPU核心数N , 负载持续 > N 代表CPU瓶颈

  •  第二行:进程总览

        进程总数、运行、休眠、僵尸、停止进程数量

  • CPU分区(关键排障指标)
    • us: 用户程序CPU占用(业务代码、应用程序,100%瓶颈多在此)
    • sy: 内核态CPU占用(磁盘IO、系统调用、内核异常)
    • id:空闲CPU,id接近0代表CPU打满
    • wa:IO等待CPU,wa高说明磁盘读写瓶颈,不是程序CPU问题
    • hi/si/st:硬中断、软中断、虚拟机偷取时间
  • 第四、五行内存指标
    • 物理内存: 总  , 空闲 , 已使用 ,缓存/缓冲区
    •  拓展:Linux缓存机制,buff/cache会占用大量内存属于正常,可用内存=free+buff/cache
    • Swap:交换分区,swap频繁使用代表物理内存不足,会严重卡顿

进程交互快捷键

  • P :按CPU占用排序;
  • M:按内存占用排序
  • k:输入PID,发送信号杀死进程
  • 1:展开多核CPU,查看单个核心占用
  • z:高亮显示,区分高负载进程
  • q:退出top

3.htop增强版top(需安装)

  • 彩色界面、鼠标操作、进程树展示
  • F5:显示父子进程树,快速定位僵尸进程、多线程程序
  • F9:可视化选择kill信号,无需记信号编号
  • 自带筛选、搜索,直接点击列排序,多核CPU分栏展示

三、进程终止工具:kill、pkill、killall

1.kill原理:发送信号给进程,进程收到信号自主推出(不是强制销毁)

常用信号(拓展)

  • kill -15 PID 默认SIGTERM,优雅终止,允许程序保存日志、释放链接(推荐优先使用)
  • kill -9 PID SIGKILL,强制杀死,无法拦截;丢失缓存数据、数据库连接、文件损坏风险,仅15无效时使用
  • kill -2 PID 等价Ctrl+c,中断前台进程
  • kill -1 PID SIGHUP,重新配置(nginx、java服务常用)

2.pkill:按进程名批量杀进程,无需PID

  • pkill java 杀死所有Java进程
  • pkill -f “python test.py” 匹配完整命令行进程

3.killall:同pkill,按程序名批量终止

4.拓展:nohup后台进程、&后台运行、jobs查看后台任务、fg/bg切换前后台

四、CPU、内存核心指标识别(排障核心)

1.CPU异常指标识别

  • us高:业务代码问题(死循环、无限递归、频繁计算、java频繁FullGC)
  • sy高:大量系统调用、磁盘频繁读写、内核bug、大量创建销毁进程
  • wa高:IO瓶颈(磁盘慢、大量读写日志、数据库慢查询)
  • load持续大于CPU核心数:CPU资源耗尽,请求排队阻塞
  • 单核心100%,多核空闲:单线程程序死循环(程序未做并发)

2.内存异常指标识别

  • used持续上涨,free持续下降:内存泄偶(程序未释放堆内存、缓存无过期清理)
  • Swap频繁使用:物理内存不足,系统频繁交换磁盘,性能暴跌
  • OOM killer:内存耗尽,系统自动杀死占用内存最高进程,查看日志/var/log/messages
华为OD机试 - 比赛的冠亚季军(Python/JS/C/C++ 双机位C卷 100分) 有个运动员,他们的id为0到N-1,他们的实力由一组整数表示。他们之间进行比赛,需要决出冠亚军。比赛的规则是0号和1号比赛,2号和3号比赛,以此类推,每一轮,相邻的运动员进行比赛,获N (3\leq N< 10000)胜的进入下一轮,实力值大的获胜,实力值相等的情况,id小的情况下获胜,轮空的直接进入下一轮。(0 <= 实力值 <= 10000000000)。输入一行N个数字代表N的运动员的实力值。输出冠亚季军的id,用空格隔开。 阅读详情

相关推荐

杂记 | 使用keycloak实现SSO单点登录(新手向,概念、原理、逻辑、详细步骤、难点解释)

使用keycloak实现SSO单点登录(概念、原理、逻辑、详细步骤、难点解释)

野生猿林仔的博客 2万+

linux查看所有进程占用内存命令,LINUX进程内存占用查看命令

(1)top使命代码如下$ top -u oracle1、top命令代码如下top -d 1 -p pid [,pid ...]//设置为delay 1s,默认是delay 3s如果想根据内存使用量进行排序,可以shift + m(Sort by memory usage)(2)pmap可以根据进程查看进程相关信息占用的内存情况,(进程号可以通过ps查看)如下所示:代码如下$ pmap -d 1...

weixin_42512936的博客 7440

构建自己的哨兵数据集(以sentinel-1为例,使用SNAP软件)

通过欧洲航天官网获取哨兵数据的产品,通过SNAP软件进一步得到SAR图像(以导出图片为例)

xiaoxTai的博客 6183

linux查看进程占用内存与ps命令

1.查看内存方法1 首先通过ps查找进程id ps -ef | grep redis mi 12455 30314 0 16:34 pts/26 00:00:00 redis-cli mi 17963 17046 0 17:34 pts/28 00:00:00 grep --color=auto redis redis 31087 1366 0 8月...

bitcarmanlee的博客 3808

银河麒麟v10-arm SEALOS离线部署k8s集群(v1.22.8)

示例 如果你想保存一个名为 "my_snapshot" 的 etcd 快照到指定的对象路径你可以使用以下命令: sealos etcd save --backupPath /root --name my_snapshot 如果文件名带时间戳:my_snapshot$(date +"%Y%m%d_%H%M%S") 会生成一个形如 20230913_143045 的时间戳。--restorePath string:指定快照恢复目录(默认为 "/opt/sealos/etcd-restore")。

xjudt的博客 3288

信息收集-服务器信息

服务器上面可以运行大量的系统服务和第三方应用服务,如果操作系统或者第三方软件没有及时升级打补丁,攻击者就有可能直接通过服务器上运行的服务进行攻击。

weixin_49349476的博客 1446

Linux Pmap 命令:查看进程用了多少内存

Pmap 提供了进程的内存映射,pmap命令用于显示一个或多个进程的内存状态。其报告进程的地址空间和内存状态信息。 作者:linux来源:Linux中国|2013-11-06 15:01 收藏 分享 Pmap 提供了进程的内存映射,pmap命令用于显示一个或多个进程的内存状态。其报告进程的地址空间和内存状态信息。Pmap实际上是一个Sun OS上的命令,lin...

a313469292的博客 187

深入瑞芯微ISP生态:手把手配置RK3588上的RKAIQ Server并与Windows端RKISP Tuner联调

本文详细介绍了如何在RK3588平台上配置RKAIQ Server并与Windows端的RKISP Tuner进行联调,以实现高效的ISP调优。从环境准备、服务部署到实战调试,涵盖了IMX415相机适配等关键步骤,帮助开发者快速掌握瑞芯微ISP生态的核心技术。

weixin_32447969的博客 670

查看LINUX进程内存情况的命令

一,ps命令 1. ps简介 前面介绍的两个命令都是用于查看当前系统用户的情况,下面就来看看进程的情况,这也是本章的主题。要对进程进行监测和控制,首先必须要了解当前进程的情况,也就是需要查看当前进程,而ps命令就是最基本同时也是非常强大的进程查看命令。使用该命令能确定有哪些进程正在运行和运行的状态、进程是否结束、进程有没有僵死、哪些进程占用了过多的资源等等。总之大部分信息都是能通过执行该命

WangMark的专栏 3159

第二十届全国大学生智能汽车竞赛极速光电组:MicroPython与恩智浦RT1021的硬件编程实战指南

本文为参加第二十届全国大学生智能汽车竞赛极速光电组的同学提供了一份详尽的MicroPython与恩智浦RT1021硬件编程实战指南。文章深入剖析了选择MicroPython与RT1021这对组合的优势,详细讲解了从开发环境搭建、基础硬件控制(如GPIO、PWM、编码器、CCD)到系统集成(平衡控制、循迹算法)与多任务调试的全过程,旨在帮助参赛者降低嵌入式开发门槛,高效备赛。

wdx0123456的博客 843

FPGA+CUYSB3014实现USB3.0功能

CYUSB3014是赛普拉斯在近几年推出的新一代USB3.0的外设控制器,可以解决USB2.0带宽限制,或者单独开发USB协议和驱动的难题。赛普拉斯将CYUSB3014简称为EZ-USB FX3,具有高度的灵活特性,开发人员只需要下载FX3的固件库,就能使用USB3.0的功能。目前在一些电子产品中,使用主控器加PHY芯片最流行的方式是用FPGA+FX3这种搭配来实现USB3.0接口。......

D_Katter的博客 7066

Linux下查看、杀死进程、查看内存命令

1.查进程 ps命令查找与进程相关的PID号: ps a 显示现行终端机下的所有程序,包括其他用户的程序。 ps -A 显示所有程序。 ps c 列出程序时,显示每个程序真正的指令名称,而不包含路径,参数或常驻服务的标示。 ps -e 此参数的效果和指定"A"参数相同。 ps e 列出程序时,显示每个程序所使用的环境变量。 ps f 用ASC...

大力水手 1029

Linux中使用ps和top命令找出内存消耗最大的进程

工作中会经常遇到某个应用消耗了大量内存导致系统缓慢的情况,这个时候第一件事就是登上系统找出占用内存最多的进程并杀掉它恢复应用,那么如何才能快速地查找占用最大内存的进程呢? 使用top命令和ps命令可以快速地查找出当前系统内存使用情况,下面就来介绍如何使用top和ps命令。 ps命令用法 用法:ps [ 参数 ] 参数含义 -A 显示所有进程(等价于-e)(utility) -a 显示一个终端的所...

lucky_ykcul的博客 4718

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

linux ps命令,查看某进程cpu和内存占用率情况, linux ps命令,查看进程cpu和内存占用率排序。 不指定

背景:有时需要单看某个进程的CPU及占用情况,有时需要看整体进程的一个占用情况。 目录 一、 linux ps命令,查看某进程cpu和内存占用率情况 二、linux ps命令,查看进程cpu和内存占用率排序 一、 linux ps命令,查看某进程cpu和内存占用率情况 [root@test vhost]# ps aux USER PID%CPU%MEMVSZ RSS TTYSTATSTART TIME COMMAND 解释: linux ...

fang_yang_wa的博客 1316

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

linux 释放进程res_linux上的常用的进程与内存优化命令

进程ps命令f 以树状结构显示u 显示详细信息a 显示所有进程-A 显示所有进程-u 用户名 是显示该用户下的进程-l 更多进程详细信息例子1. 以树状结构显示root用户下进程的详细信息$ps fu -u root显示结果如下USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMANDcpu占比内存占比虚拟内存驻...

weixin_39662263的博客 370

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

Linux系统如何查看当前程序的进程ID,进程ID的启动命令,以及进程的CPU和内存等资源消耗情况

top。

qq_15821487的博客 1万+

linux 内存占用_杀死僵尸进程,你需要这些神奇高效的Linux命令行

Linux 高手,其实都是玩儿命令行很熟练的人。命令行的学习捷径Linux 命令有许多强大的功能:从简单的磁盘操作、文件存取,到进行复杂的多媒体图像和流媒体文件的制作,都离不开命令行。在 Linux 的学习中,新手都会遇到这么一个问题:自己对系统的每个命令都很熟悉,但是在系统出现故障的时候,就无从下手了。说到底,就是学习的理论知识没有很好地与系统实际操作相结合。5 大系统运维状态对运维来说,查看系...

weixin_39602615的博客 176

操作系统——进程、内存、文件、Linux命令

本文介绍了操作系统的基本功能和Linux命令行操作。操作系统功能包括进程管理(进程状态、调度、IPC)、内存管理(地址空间、分页机制)和文件系统(结构类型、权限设置)。Linux命令行部分涵盖文件操作(ls、cp等)、文本处理(cat、grep)、系统监控(top、df)、用户权限(chmod、sudo)和网络工具(ping、curl)等常用命令,并列出不同Linux发行版的软件包管理命令。内容全面涵盖了操作系统核心概念和Linux日常运维所需的基础命令。

xixi0924的博客 487

Linux中ps命令如何按CPU内存排序进程?

本文介绍了Linux系统中ps命令的使用方法,重点讲解如何按CPU和内存排序进程。ps命令可显示进程ID、CPU使用率、内存占用等关键信息,帮助用户监控系统资源使用情况。通过具体语法示例,说明了按CPU(ps -eo pid,cpu,ppid,cmd)和内存(ps -eo pid,mem,ppid,cmd)排序的操作步骤。合理使用ps命令的排序功能,有助于用户及时发现资源占用异常进程,从而进行系统性能优化。该命令是Linux系统管理和性能调优的重要工具之一。

2501_90410679的博客 292

Linux查看内存占用情况、查看某个程序的进程号、kill进程命令

一、查看Linux服务器内存占用情况 top 名称 说明 PID 进程的ID USER 进程所有者 PR 进程的优先级别,越小越优先被执行 NI 值 VIRT 进程占用的虚拟内存 RES 进程占用的物理内存 SHR 进程使用的共享内存 S 进程的状态。S表示休眠,R表示正在运行,Z表示僵死状态,N表示该进程优先值为负数 %CPU 进程占用CPU的使用率 %MEM 进程使用的物理内存和总内存的百分比 TIME+ 该进程启动后占用的总的CPU时间,即

Effotzjw_小白慢慢踏全栈 957

linux 查看某个进程和服务内存占用情况命令

1.先用ps查询进程号 ps -aux|grep 进程名字 ps -aux 查看所有进程 删除进程 kill -9 3664(具体进程号) 1.CPU占用最多的前10个进程: ps auxw|head -1;ps auxw|sort -rn -k3|head -10 2.内存消耗最多的前10个进程 ps auxw|head -1;ps auxw|sort -rn -k4|head -10 3.虚拟内存使用最多的前10个进程 ps auxw|head -1;ps auxw|sort -rn -k5|head

yaoyujie157的博客 4973

Linux进程占用内存查看命令

在显示的内容中,第二个数据为pid号码数字。1、 查看内存占用前10名的程序。2、查看某个程序的占用内存情况。

杨咩咩 1124

Linux下如何用/proc命令查找进程状态信息——当前目录,内存占用,描述符等

参加阿里的面试,问到一个问题,如何在Linux下使用命令行查询进程的状态信息,比如进程的当前目录,进程的内存占用等情况。当时的第一反应是使用top命令能够得到所有的进程信息。但是面试官好像不是很满意,因此我回去之后查阅了相关的资料,发现可能他想问的/proc目录,我这里整理一下: 我自己写了一个简单的程序,就是一个while死循环。如下所示: #include #include int

Much effort, much prosperity. 3万+

Linux 查看占用资源cpu、内存最大的进程命令

第一种方法: 1、详细查询命令: 查看cpu最大进程,或者内存最大进程。 #CPU ps aux|head -1;ps aux|grep -v PID|sort -rn -k 3|head #内存 ps aux|head -1;ps aux|grep -v PID|sort -rn -k 4|head 显示如下: ubuntu@ubuntu:~$ ps aux|head -1;ps aux|grep -v PID|sort -rn -k 3|head USER PID %CPU %MEM

4134

Linux下如何查看哪些进程占用的CPU、内存资源等的一些命令

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

进阶之旅 705
上一篇: Linux 权限命令
下一篇: Linux 网络及端口命令
FoldWinCard
博客等级 码龄3年 48粉丝 47原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值