集团网站建设案例,有哪些专门做减肥内容的网站,钓鱼网站制作视频教程,织梦汽车网站模板[译] linux内存管理之RSS和VSZ的区别
阅读 724
收藏 0
2019-08-25
原文链接#xff1a; pengrl.com
RSS是Resident Set Size#xff08;常驻内存大小#xff09;的缩写#xff0c;用于表示进程使用了多少内存#xff08;RAM中的物理内存#xff09;#xff0c;RSS不…[译] linux内存管理之RSS和VSZ的区别
阅读 724
收藏 0
2019-08-25
原文链接 pengrl.com
RSS是Resident Set Size常驻内存大小的缩写用于表示进程使用了多少内存RAM中的物理内存RSS不包含已经被换出的内存。RSS包含了它所链接的动态库并且被加载到物理内存中的内存。RSS还包含栈内存和堆内存。
VSZ是Virtual Memory Size虚拟内存大小的缩写。它包含了进程所能访问的所有内存包含了被换出的内存被分配但是还没有被使用的内存以及动态库中的内存。
假设进程A的二进制文件是500K并且链接了一个2500K的动态库堆和栈共使用了200K其中100K在内存中剩下的被换出或者不再被使用一共加载了动态库中的1000K内容以及二进制文件中的400K内容至内存中那么 RSS: 400K 1000K 100K 1500K
VSZ: 500K 2500K 200K 3200K由于部分内存是共享的被多个进程使用所以如果将所有进程的RSS值加起来可能会大于系统的内存总量。
申请过的内存如果程序没有实际使用则可能不显示在RSS里。比如说一个程序预先申请了一大批内存过了一段时间才使用你会发现RSS会增长而VSZ保持不变。
还有一个概念是PSS它是proportional set sizeproportional是成比例的意思的缩写。这是一种新的度量方式。它将动态库所使用的内存按比例划分。比如我们前面例子中的动态库如果是被两个进程使用那么
PSS: 400K (1000K/2) 100K 400K 500K 100K 1000K一个进程中的多个线程共享同样的地址空间。所以一个进程中的多个线程的RSSVSZPSS是完全相同的。linux下可以使用ps或者top命令查看这些信息。
如果想了解更多可参考下面的链接
manpages.ubuntu.com/manpages/en…web.archive.org/web/2012052…A way to determine a process’s “real” memory usage, i.e. private dirty RSS?
英文原文 What is RSS and VSZ in Linux memory management