内存耗用:VSS/RSS/PSS/USS 的介绍

一般来说内存占用大小有如下规律:VSS >= RSS >= PSS >= USS

  1. VSS - Virtual Set Size (用处不大)
    虚拟耗用内存(包含共享库占用的全部内存,以及分配但未使用内存)。其大小还包括了可能不在RAM中的内存(比如虽然malloc分配了空间,但尚未写入)。VSS 很少被用于判断一个进程的真实内存使用量。


  2. RSS - Resident Set Size (用处不大)
    实际使用物理内存(包含共享库占用的全部内存)。但是RSS还是可能会造成误导,因为它仅仅表示该进程所使用的所有共享库的大小,它不管有多少个进程使用该共享库,该共享库仅被加载到内存一次。所以RSS并不能准确反映单进程的内存占用情况


  3. PSS - Proportional Set Size (仅供参考)
    实际使用的物理内存(比例分配共享库占用的内存,按照进程数等比例划分)。例如:如果有三个进程都使用了一个共享库,共占用了30页内存。那么PSS将认为每个进程分别占用该共享库10页的大小。 PSS是非常有用的数据,因为系统中所有进程的PSS都相加的话,就刚好反映了系统中的 总共占用的内存。 而当一个进程被销毁之后, 其占用的共享库那部分比例的PSS,将会再次按比例分配给余下使用该库的进程。这样PSS可能会造成一点的误导,因为当一个进程被销毁后, PSS不能准确地表示返回给全局系统的内存。


  4. USS - Unique Set Size (非常有用)
    进程独自占用的物理内存(不包含共享库占用的内存)。USS是非常非常有用的数据,因为它反映了运行一个特定进程真实的边际成本(增量成本)。当一个进程被销毁后,USS是真实返回给系统的内存。当进程中存在一个可疑的内存泄露时,USS是最佳观察数据。


  5. 参考资料:
    http://myeyeofjava.iteye.com/blog/1837860
    http://blog.csdn.net/panda1234lee/article/details/52291588

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
禁止转载,如需转载请通过简信或评论联系作者。

推荐阅读更多精彩内容

  • 一、概述 1.1 内存指标概念 Item 全称 含义 等价 USSUnique Set Size物理内存进程独占的...
    tiger桂阅读 2,708评论 0 0
  • 一、 通过eclipse,ADT开发工具的DDMS来查看(Heap) 在“Devices”窗口中选择模拟器中的一个...
    LiveMoment阅读 3,977评论 1 2
  • 安卓APP检查点: aapt dump badging {{文件.apk}} 可以看包名package name、...
    茗嫣阅读 736评论 1 2
  • 我想 归于尘土 重新被轮毂碾压 被雨水洗刷 被大风掠过 然后 生机勃发 静谧生长 不为世间纷扰所动 不悲不喜 不急...
    三脚猫WW阅读 485评论 0 0
  • 冷冬日的下午,太阳像蒙在白纸里的隔夜蛋黄,有气无力的给苍白的大地添上清浅的一抹,只有亮度,没有温度。 然小呼打开车...
    然然巫阅读 195评论 0 0