Linux   发布时间:2022-04-01  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了如何确定分叉进程(Linux)使用的内存?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

继 this question之后.Debian,如果重要的话. 我知道分叉进程之间共享一些内存.那么我如何确定一个进程/一组分叉进程使用了​​多少内存? 使用this similar question推荐的smem工具,我得到的值如下: Command Swap USS PSS RSS /usr/sbin/spamd
this question之后.Debian,如果重要的话.

我知道分叉进程之间共享一些内存.那么我如何确定一个进程/一组分叉进程使用了​​多少内存?

使用this similar question推荐的smem工具,我得到的值如下:

Command                         Swap      USS      PSS      RSS 
/usr/sbin/spamd --create-pr        0    16820    24974    41628
spamd chil                         0    19388    27581    44176
spamd chil                         0    32328    40038    55708

我理解交换列,RSS列是通常报告的(例如ps).从阅读smem文档来看,听起来USS是专门针对该孩子的内存,PSS是整个进程共享的内存的一部分.但是,在PSS中添加USS会提供比RSS更高的值,我认为共享意味着更少(所以我可能错误地解释).

我没有绑上涂抹工具.我想要一些获得“内存使用”数字的方法,该数字有点准确地反映了该进程正在使用的实际内存量.

解决方法

比例集大小可能是您可用的每个进程的内存使用的最佳数字.它是唯一的集合大小(共享页面/进程共享的#).

因此,一个进程使用了​​44176个页面,其中19388个页面是该进程独有的.这意味着24788与其他人共享.

将PSS视为USS(共同体重).在这种情况下,权重是8193,这是可归因于此过程的共享内存页面(24788)的比例.您共享页面的应用程序实例越多,每个进程的权重就越低.

您可以跨多个流程对PSS求和,并且不会多次计算共享页面.但是,你不能总结USS和PSS并期望RSS,因为PSS已经包含了USs.

大佬总结

以上是大佬教程为你收集整理的如何确定分叉进程(Linux)使用的内存?全部内容,希望文章能够帮你解决如何确定分叉进程(Linux)使用的内存?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。