统计系统所有进程总共占用多少内存
常见误解:
ps aux 命令显示的 RSS 列来统计全部进程总共占用的物理内存大小,这是不合理的。RSS(resident set size)表示常驻内存的大小,但是由于不同的进程之间会共享内存,所以把所有进程RSS进行累加的方法会重复计算共享内存,得到的结果是偏大的。
正确的方法:
累加 /proc/[1-9]*/smaps 中的 Pss 。/proc/<pid>/smaps 包含了进程的每一个内存映射的统计值,Pss(Proportional Set Size)把共享内存的Rss进行了平均分摊,比如某一块100MB的内存被10个进程共享,那么每个进程就摊到10MB。这样,累加Pss就不会导致共享内存被重复计算了。
统计命令如下:
grep Pss /proc/[1-9]*/smaps |awk '{total+=$2}; END {print total}'
注意:
1.全部进程占用的内存并不等于 free 命令所显示的 "used",因为"used"不仅包含了进程所占用的内存,还包含cache/buffer以及kernel动态分配的内存等等。
2.【MemTotal = MemFree + buff/cache + slab + 全部进程占用的内存】。这是不对的,原因之一是:进程占用的内存包含了一部分page cache,换句话说,就是进程占用的内存与page cache发生了重叠。比如进程的mmap文件映射同时也统计在page cache中。
统计系统所有进程总共占用多少内存相关推荐
- linux统计所有进程总共占用多少内存?
原文地址:http://linuxperf.com/?p=143 很多人通过累加 "ps aux" 命令显示的 RSS 列来统计全部进程总共占用的物理内存大小,这是不对的.RSS ...
- 获取内存_如何获取一个进程所占用的内存
推荐观看: BATJ面试官最喜欢问的:多线程.线程并发面试题详解(volatile+ThreadLocal+Sleep)_哔哩哔哩 (゜-゜)つロ 干杯~-bilibiliwww.bilibili. ...
- linux查找用户前三进程_查看 Linux 系统中进程和用户的内存使用情况 | Linux 中国...
有一些命令可以用来检查 Linux 系统中的内存使用情况,下面是一些更好的命令.-- Sandra Henry-stocker 有许多工具可以查看 Linux 系统中的内存使用情况.一些命令被广泛使用 ...
- Mac使用Top命令统计多个进程的CPU和内存
Mac和Linux的top还是有些区别的,在使用的时候需要注意,我们从帮助提示可以看出,比如: Linux电脑: $ top -htop: procps version 3.2.8 usage: to ...
- C++得到当前进程所占用的内存
http://blog.csdn.net/genliu777/article/details/7260501
- Linux下查看某一进程占用的内存
一. ps -ef|grep flink 和 top -p pid 组合 Linux下查看某一个进程所占用的内存,首先可以通过ps命令找到进程id,比如:ps -ef|grep flink,可以看到f ...
- 大型软件是否占用计算机内存,电脑系统开机内存占用多少正常
原标题:电脑系统开机内存占用多少正常 正常情况下有多少启动内存? 如果使用2G内存,则Win7在启动时基本上可以达到50%以上,运行点程序肯定会达到80%,这是正常的. 如果使用4G内存,则Win7在 ...
- Linux下查看某一进程所占用内存的方法 -- from cnblogser 小得盈满
Linux下查看某一个进程所占用的内存,首先可以通过ps命令找到进程id,比如 ps -ef | grep kafka 可以看到kafka这个程序的进程id 可以看到是2913,现在可以使用如下命令查 ...
- 进程退出:占用的内存都去哪儿了?
Python实战社群 Java实战社群 长按识别下方二维码,按需求添加 扫码关注添加客服 进Python社群▲ 扫码关注添加客服 进Java社群▲ 作者丨码农的荒岛求生 来源丨码农的荒岛求生(ID:e ...
- 进程退出后占用的内存都去哪儿了?
本文是<深入理解操作系统>第四章,从本章开始将开启第一个重要的主题:进程,彻底理解进程对程序员来说是极为重要的,本章就从程序员的角度来讲解到底什么是进程.操作系统是如何实现进程的.本文承接 ...
最新文章
- dubbo入门--Hello World
- C++ Primer 学习笔记(第四章:表达式)
- 透视 CES 2018:不容错过的四大科技趋势
- PHP-Wakeup魔术漏洞骚操作
- SD Card Formatter for Mac Download
- html5中三角函数,HTML5(四)html5<canvas路径和三角函数的故事>(中)
- Windows phone 8 是新的起点吗?
- css选择器位置和数量技巧
- 容器入门(1) - 安装和使用Docker Registry
- qt编写的android程序在android系统中运行,中文显示乱码的解决方法
- matlab中设置拟合初值,如何确定自定义函数拟合时的参数初值?
- 路由器故障排除的思路与理论
- OceanBase发布“珊瑚计划”,让合作伙伴成为OceanBase成功的关键
- 微信视频号运营 1000 问
- 《Java SE实战指南》06-08:枚举类型(Enumerated types)
- socket:10038错误
- 【实战】python-docx---每页表格固定显示行数
- matlab 2022更新
- Fiddler死活抓不了HTTPS包解决办法(2018更新版本)
- 猿人学第五题-乱码增强(油猴hook禁用频繁日志、扣代码易错点)
热门文章
- Sublime text 3 注册码激活码 版本号3143
- 解决windows下的mysql匿名登陆无法使用mysql数据库的问题
- easyui学习笔记3—在展开行内的增删改操作
- php项目升级包制作,PHP项目安全:PHP的安装与升级
- Spring 的 init-method 和 destory-method
- Java核心技术卷一基础知识-第3章-Java的基本程序设计结构-读书笔记
- 基于vue2.0+svg 拓扑组件
- 搞大啦!精灵云与全球最大孵化器PNP带你一起飞
- 渗透场景篇--当XSS遇上CSRF
- Andro - Multipurpose OpenCart 2.X 自适应主题模板 ABC-0651