Linux进程四种内存:VSS、RSS、PSS、USS

QuibblerQuibbler 2024-11-07 约 2 分钟 1602 次阅读

Linux进程四种内存:VSS、RSS、PSS、USS

Linux中的进程内存占用包括VSS、RSS、PSS和USS四种形式。VSS>RSS>PSS>USS。

1、VSS

VSS是单个进程全部可访问的地址空间,其大小可能包括还尚未在内存中驻留的部分。


对于确定单个进程实际内存使用大小,VSS用处不大。

2、RSS

RSS是单个进程实际占用的内存大小,RSS不太准确的地方在于它包括该进程所使用共享库全部内存大小。


对于一个共享库,可能被多个进程使用,实际该共享库只会被装入内存一次。

3、PSS

进而引出了PSS,PSS是按比例分配的共享库内存,PSS相对于RSS计算共享库内存大小是按比例的。N个进程共享一个库,该库对PSS大小的贡献只有1/N。

PSS用于评估系统总内存占用。

4、USS

USS为进程独占内存,USS是单个进程私有的内存大小,即该进程独占的内存部分。USS揭示了运行一个特定进程在的真实内存增量大小。如果进程终止,USS就是实际被返还给系统的内存大小。


USS最能反映进程的真实内存增量,USS在检测内存泄漏时特别有用。

相关推荐

精选
获取系统SDK版本、判断手机ROM
Code

获取系统SDK版本、判断手机ROM

Build获取系统SDK版本Android中部分API的使用,需要在特定的SDK版本之后才能使用,因此在兼容老版本SDK的时候,经常需要判断API的版本。各种Android版本的对应关系参考《Android各版本对应的SDK版本》判断手机ROM有时候需要判断手机系统的ROM,检测ROM是MIUI、EMUI还是Flyme,可以使用getprop命令,去系统build.prop文件(关于build.p

3.7k
精选
AndroidStudio中各种中文乱码问题
Code

AndroidStudio中各种中文乱码问题

AndroidStudio中各种中文乱码问题1、编译Java错误信息乱码在出现这个Annotation processors must be explicitly declared now...问题的时候,正好也发现AndroidStudio Build Output错误信息都乱码。经常遇到各种问题,习惯了,现在遇到的问题,都是以后的答案。 1.1、修改项目build.gradle(无效)在整个p

2.4k
AndroidStudio 报错:has no declaration in the base values folder
Code

AndroidStudio 报错:has no declaration in the base values folder

在资源文件中正常定义的值,也能编译运行。昨天还正常,今天一打开就报错。应该又是AndroidStudio自身的Bug了。原因众说纷纭,参考Stack Overflow 一篇类似的讨论。解决:File => Invalidate Caches / Restart => Invalidate and Restart.

4.4k