进程内存使用PSS和VSZ的区别
发表于:2025-01-30 作者:千家信息网编辑
千家信息网最后更新 2025年01月30日,进程内存使用PSS和VSZ的区别,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。可以使用 ps aux 命令获取每进程的内存使用,其中
千家信息网最后更新 2025年01月30日进程内存使用PSS和VSZ的区别
进程内存使用PSS和VSZ的区别,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
可以使用 ps aux 命令获取每进程的内存使用,其中VSZ表示虚拟内存使用大小,RSS(resident set size)表示常驻内存的大小,来自于/proc/PID/status文件。
~ # ps aux | headUSER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMANDroot 1 0.4 0.1 18984 1968 ? Ss 10:58 0:47 /sbin/helloroot 2 0.0 0.0 0 0 ? S 10:58 0:00 [kthreadd]root 3 0.0 0.0 0 0 ? S 10:58 0:10 [ksoftirqd/0]
但RSS并不代表进程的实际内存消耗,因为不同的进程之间会共享内存,所以把所有进程RSS进行累加的方法会重复计算共享内存,得到的结果是偏大的。正确的方式是累加/proc/PID/smaps中的Pss(process's proportional share of this mapping)字段。选取某个vma的统计数据:
01e70000-01ef6000 rw-p 00000000 00:00 0 [heap]Size: 536 kBRss: 408 kBPss: 408 kBShared_Clean: 0 kBShared_Dirty: 0 kBPrivate_Clean: 0 kBPrivate_Dirty: 408 kBReferenced: 408 kBAnonymous: 408 kBAnonHugePages: 0 kBShmemPmdMapped: 0 kBShared_Hugetlb: 0 kBPrivate_Hugetlb: 0 kBSwap: 0 kBSwapPss: 0 kBKernelPageSize: 4 kBMMUPageSize: 4 kBLocked: 0 kBVmFlags: rd wr mr mw me ac sd
每个虚拟内存区域(VMA)是一个连续的虚拟地址范围,并且它们不会重叠。一个vm_area_struct实例完整的描述了一个内存区域,包括起止地址、访问权限标志以及用于指出被映射文件(如果存在)的vm_file字段。其中,size表示这段虚拟空间的大小,Rss表示驻留内存的大小,Pss表示分摊后的内存大小,Referenced表示总共被引用或被访问的内存大小,Anonymous表示没有映射到文件的内存大小,Swap也是匿名内存,表示交换分区内存的大小。各个字段的关系如下:
USS = Private_Clean + Private_DirtyPss = USS + (Shared_Clean + Shared_Dirty)/nRSS = USS + Shared_Clean + Shared_Dirty
以hello进程为例,使用前面介绍的统计内存的数据:
使用ps~ # ps aux | grep /sbin/helloroot 1182 0.7 0.2 474208 5636 ? Sl 11:00 1:38 /sbin/hello
grep -w Pss /proc/1182/smaps | awk 'BEGIN{sum=0} {sum+=$2} END {print "total mem:"sum}'total mem:1752
可以看到,RSS与PSS相差非常大。进程的内存统计一定是使用Pss。
关于进程内存使用PSS和VSZ的区别问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注行业资讯频道了解更多相关知识。
内存
进程
大小
字段
文件
问题
统计
区域
地址
数据
方法
更多
帮助
解答
不同
易行
简单易行
之间
代表
内容
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
更换服务器后无法ping通
数据库 学生选课表
软件开发中的内存溢出
Nfine连接数据库
ios数据库性能优化
知乎软件开发企业成本核算
市场监管系统网络安全工作总结
免费的数据库管理工具mysql
门禁数据库密码
sleepycat数据库
网吧无盘服务器管理
北京小型软件开发免费咨询
兼职网络安全防范
佛山分销软件开发
新疆胡杨林网络技术有限公司
网络安全管理和运维
天翼网盘代理服务器需要打开吗
sql对不同数据库查询
中国服务器企业名录
数据库join in 用法
市场监管系统网络安全工作总结
颖云网络技术有限公司怎么样
景安服务器diy
vr软件开发平台
机载导航数据库编码限制
14国三网络技术习题下载
飞入百姓家的网络安全
nodejs 数据库单例模式
数据库原理及应用清考
网络安全问卷设计的八个步骤