讲师中心 微信公众号
AI工具推荐 视频效率加速

Linux怎么查看某个命令的内存占用情况

酷静姑娘_4046

酷静姑娘_4046

发布时间:2026-09-02 10:07:20

|

649人浏览过

|

来源于php中文网

原创

ps aux | grep 显示的RSS不准,因其包含重复计算的共享内存、未聚合多进程、且grep自身干扰;真实物理内存应看/proc/[pid]/status中的VmRSS或用smem的PSS/USS。

linux怎么查看某个命令的内存占用情况

ps aux | grep 后为什么看不到真实 RSS 值

直接用 ps aux | grep nginx 查到的 RSS 常常不准,因为 grep 进程本身也会被列出来,且父子进程(如 nginx master + worker)的内存是分开统计的,ps 默认只显示单个线程或轻量级进程的快照,不聚合。更关键的是:RSS 是驻留集大小,但未扣除共享页——多个 worker 共享的代码段、libc 等会被重复计入。

  • 用 pgrep -f "nginx: master" 或 pidof nginx 获取主进程 PID,避免匹配到 grep 自身
  • 若服务启用了多 worker(如 nginx、redis),应查所有相关 PID:pgrep -f "nginx:"
  • 想看总占用?别只信单行 RSS,改用 smem -P nginx -c "pid pss rss",它会自动聚合并用 PSS(比例化共享内存)给出更公平的数值

/proc/[pid]/status 里哪个字段代表真实物理内存

/proc/[pid]/status 是内核提供的权威来源,但字段含义容易混淆。VmRSS 是最接近“该进程实际占多少物理内存”的指标,单位是 kB;而 VmSize 是虚拟地址空间总量(含 mmap、未分配的 brk 区域),不能反映真实压力。

Zynq Linux Hardware Debug
Zynq Linux Hardware Debug

Zynq‑7000 / Zynq UltraScale+ 硬件调试技能。适用于 Xilinx Zynq(Cortex‑A9/A53 + FPGA)Linux 环境,调试 I2C、I2S、UART、GPIO 等外设。包括设备树配置、内核驱动、用户空间调试工具、交叉编译和常见问题排查,支持 PetaLinux 开发。

下载
  • VmRSS:实际加载进物理内存的页数,包含堆、栈、私有数据段和部分共享库的已使用页
  • VmData 和 VmStk 可辅助判断是否堆内存持续增长(疑似泄漏)
  • 注意:VmRSS 不等于 ps 的 RSS —— 后者可能四舍五入或受调度延迟影响,前者是瞬时精确值
  • 示例命令:cat /proc/$(pidof nginx)/status | grep VmRSS

pmap -x 输出里哪些行真正算“进程独占”内存

pmap -x [pid] 展开每个内存段的细节,但多数段是共享的(如 libc、ld.so)。真正属于该进程“独占且脏”的只有 [heap] 和末尾标记为 [anon] 的私有匿名映射段——它们的 Kbytes 加起来才接近 USS(Unique Set Size),即不会被其他进程分摊的部分。

  • 过滤关键段:pmap -x $(pidof nginx) | awk '$3 ~ /^\[/ && $4 == "rw-p" {sum += $2} END {print sum}'
  • [stack] 段通常很小(几 MB),但若程序递归过深或线程过多,这里会异常膨胀
  • 大量 [anon]: 行(无文件名、权限含 w)是 malloc/new 分配的堆内存,增长快就该怀疑泄漏
  • 别被 total 行迷惑——它含所有映射(包括只读代码段、未访问的 mmap 区域)

为什么 smem 比 ps 更适合对比多个同名进程

当运行多个相同命令的实例(如 10 个 python script.py),ps aux --sort=-%mem 会把它们按各自 %mem 排序,但共享库内存被重复计算,导致总和虚高;smem 则基于 /proc/[pid]/smaps 中的 PSS 字段,把共享页按参与进程数均摊,结果可加总。

  • 查全部 python 进程的 PSS 总和:smem -P python -c "pss" → 输出单列数字(kB)
  • 对比 USS(独占)和 PSS(均摊后):smem -P python -c "uss pss",差值越大说明共享越充分
  • 没装 smem?可用临时方案:awk '/^Pss:/ {sum += $2} END {print sum}' /proc/[pid]/smaps,但需手动遍历每个 PID
真实内存占用不是单一数字,而是取决于你关心的问题:是杀掉谁释放最多物理页?看 VmRSS;是评估长期泄漏趋势?盯 [heap] 在 pmap 中的增长;是要横向比较同类服务资源开销?必须用 smem 的 PSS。工具本身没对错,错的是把 ps RSS 当成铁律去算总账。

热门AI工具

更多
DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

讯飞智作

讯飞智作是一款AI视频创作工具,AI文本配音工具,数字人课程、营销视频制作。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

墨刀AI
墨刀AI Hot

一款AI图像与设计工具,主要用于产品经理的专属智能体,适合需要提升相关任务效率的用户。

立刻MV
立刻MV Hot

立刻MV是一款AI文本写作工具,AI 音乐视频(MV)创作工具。

VibeKnow
VibeKnow Hot

一款AI视频创作工具,主要用于全球首个AI知识视频创作平台,文档、文章、网页,一键生成视频,适合需要提升相关任务效率的用户。

超级简历WonderCV

一款AI办公效率工具,主要用于免费求职简历模版下载制作,应届生职场人必备简历制作神器,适合需要提升相关任务效率的用户。

PixPix
PixPix Hot

PixPix是一款面向电商视觉生产的AI商品图生成工具。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

相关专题

更多
磁盘配额是什么
磁盘配额是什么

磁盘配额是计算机中指定磁盘的储存限制,就是管理员可以为用户所能使用的磁盘空间进行配额限制,每一用户只能使用最大配额范围内的磁盘空间。php中文网为大家提供各种磁盘配额相关的内容,教程,供大家免费下载安装。

4150

2023.06.21

如何安装LINUX
如何安装LINUX

本站专题提供如何安装LINUX的相关教程文章,还有相关的下载、课程,大家可以免费体验。

3513

2023.06.29

linux find
linux find

find是linux命令,它将档案系统内符合 expression 的档案列出来。可以指要档案的名称、类别、时间、大小、权限等不同资讯的组合,只有完全相符的才会被列出来。find根据下列规则判断 path 和 expression,在命令列上第一个 - ( ) , ! 之前的部分为 path,之后的是 expression。还有指DOS 命令 find,Excel 函数 find等。本站专题提供linux find相关教程文章,还有相关

2733

2023.06.30

linux修改文件名
linux修改文件名

本专题为大家提供linux修改文件名相关的文章,这些文章可以帮助用户快速轻松地完成文件名的修改工作,大家可以免费体验。

6650

2023.07.05

linux系统安装教程
linux系统安装教程

linux系统是一种可以免费使用,自由传播,多用户、多任务、多线程、多CPU的操作系统。本专题提供linux系统安装教程相关的文章,大家可以免费体验。

6302

2023.07.06

linux查看文件夹大小
linux查看文件夹大小

Linux是一种自由和开放源码的类Unix操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。linux怎么查看文件夹大小呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

3653

2023.07.20

linux查看ip命令
linux查看ip命令

本专题为大家提供linux查看ip命令相关文章内容,感兴趣的朋友可以免费下载体验试试。

3145

2023.07.20

linux查看cpu使用率
linux查看cpu使用率

在linux的系统维护中,可能需要经常查看cpu使用率,分析系统整体的运行情况。本专题为大家带来了linux查看cpu使用率的相关文章,感兴趣的朋友千万不要错过了。

3379

2023.07.25

Playwright 测试失败怎么办
Playwright 测试失败怎么办

Playwright测试失败专题汇集超时、定位器匹配、浏览器提前关闭、依赖与插件配置、文件上传、SSL及Docker启动等故障文章,并介绍通过截图、报告和Trace定位错误。

0

2026.10.21

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Python uv官方安装与入门文档
Python uv官方安装与入门文档

共0课时 | 0人学习

Buffalo框架快速入门指南
Buffalo框架快速入门指南

共0课时 | 0人学习

Valgrind支持平台说明
Valgrind支持平台说明

共0课时 | 0人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn