首页 > 系统服务 > 详细

linux内存管理 -- 一个进程占多少内存?四种计算方法:VSS/RSS/PSS/USS

时间:2019-03-18 14:17:05      阅读:356      评论:0      收藏:0      [点我收藏+]

在Linux里面,一个进程占用的内存有不同种说法,可以是VSS/RSS/PSS/USS四种形式,这四种形式首字母分别是Virtual/Resident/Proportional/Unique的意思。

  • VSS- Virtual Set Size 虚拟耗用内存(包含共享库占用的内存)

    VSS是单个进程全部可访问的地址空间,其大小可能包括还尚未在内存中驻留的部分。对于确定单个进程实际内存使用大小,VSS用处不大。

 

  • RSS- Resident Set Size 实际使用物理内存(包含共享库占用的内存)

    RSS是单个进程实际占用的内存大小,RSS不太准确的地方在于它包括该进程所使用共享库全部内存大小。对于一个共享库,可能被多个进程使用,实际该共享库只会被装入内存一次。像libc这种大部头库文件,共享者很多,都算在一个进程头上不科学

 

  • PSS- Proportional Set Size 实际使用的物理内存(比例分配共享库占用的内存)

    PSS相对于RSS计算共享库内存大小是按比例的。N个进程共享,该库对PSS大小的贡献只有1/N。PSS计算更加科学,除了自己独占的内存,再加上分到的共享部分。

 

  • USS- Unique Set Size 进程独自占用的物理内存(不包含共享库占用的内存)

    USS是单个进程私有的内存大小,即该进程独占的内存部分。USS揭示了运行一个特定进程在的真实内存增量大小。如果进程终止,USS就是实际被返还给系统的内存大小。USS在计算一个新加入的进程导致系统内存增量很有用处,因为共享部分已经存在,并不是由其导致的。

 

 

  综上,VSS >= RSS >= PSS >= USS

 

linux内存管理 -- 一个进程占多少内存?四种计算方法:VSS/RSS/PSS/USS

原文:https://www.cnblogs.com/xiaochongc/p/10551809.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!