首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么顶部的VSIZE值与ps中的VSZ (虚拟集大小)值不同?

问为什么顶部的VSIZE值与ps中的VSZ (虚拟集大小)值不同?
EN

Unix & Linux用户
提问于 2011-08-07 17:42:38
回答 1查看 19.4K关注 0票数 10

我知道ps中的VSZ是为应用程序分配的总地址空间,有时别名为vsize (在linux上的ps手册页中提到),但是top中VSIZE的定义是什么呢?来自iPhone的这个顶级输出与Linux上的顶层不同:

代码语言:javascript
复制
 PID COMMAND      %CPU   TIME   #TH #PRTS #MREGS  RPRVT  RSHRD  RSIZE  VSIZE
 1875 emma         0.0%  0:30.83   7   139    932 17868K  5328K    29M   181M

root# ps -eo pid,rss,vsz|grep 1875
 1875  29324   441324
EN

回答 1

Unix & Linux用户

发布于 2011-12-01 12:52:53

Linux系统中充满了内存优化实用程序和内存共享的许多例程,使得内存如何共享和使用的想法,ps和其他ps相关命令的繁琐approach.The输出都会从/proc文件系统下的数据中提取出它们的输出。特别是ps (驻留内存)、rss (驻留内存)和VSIZE (虚拟内存大小)都很重要,但是VSIZE没有显示内存的准确使用,而VSIZE和rss之间的区别实际上是初始化时分配给程序的,但可能还没有被引用。与程序类似,程序可能有很多链接库,但它们尚未加载,因为它们尚未在实际的程序运行时中被引用。RSS给出了程序实际使用的总内存,但可能没有给出内存消耗的真实图片,因为所分配的大部分内存可能与同一进程或其他进程的其他实例共享。在/proc/<processid>/maps下面查看可能会大致了解内存是如何使用的,但它们的安静有时会产生误导。使用命令行中的pmap -x <pid>,可以看到扩展是有用的。

通常更好的实用工具是free和vmstat。free将向您提供当前内存消耗的详细信息,并且vmstat可以用来查看更新的频率。

票数 6
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/18266

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档