从wnn.net报价
进程的“比例集大小”(PSS)是它在内存中具有的页面数,其中每个页面除以共享它的进程数。因此,如果一个进程自身拥有1000页,并且与另一个进程共享1000页,则其PSS将为1500
从Linux内核文档中,
的
/proc/PID/smaps是基于在地图上的一个延伸,示出了用于每个进程的映射的内存消耗。对于每个映射,都有一系列行,如下所示:
08048000-080bc000 r-xp 00000000 03:02 13130 /bin/bashSize: 1084 kBRss: 892 kBPss: 374 kBShared_Clean: 892 kBShared_Dirty: 0 kBPrivate_Clean: 0 kBPrivate_Dirty: 0 kBReferenced: 892 kBAnonymous: 0 kBSwap: 0 kBKernelPageSize: 4 kBMMUPageSize:4 kBLocked: 374 kB
这些行的第一行显示的信息与 / proc / PID / maps中 的映射显示的信息相同。其余各行显示映射的大小( size
),当前驻留在RAM中的映射的数量( RSS ),进程在此映射中的比例份额( PSS ),映射。请注意,即使页面是
MAP_SHARED 映射的一部分,但仅映射了一个pte,即当前仅由一个进程使用,也被视为私有而不是共享。“已 引用
”表示当前标记为已引用或已访问的内存量。” 匿名 “显示不属于任何文件的内存量。甚至与文件关联的映射也可能包含匿名页面:修改
MAP_PRIVATE 和页面后,文件页面将被私有匿名副本替换。“ 交换 ”显示如何还使用了很多将要匿名的内存,但是在交换时就用完了。
关于
Unix andLinuxStackexchange的问题几乎涵盖了这个主题。请参阅Mat的出色回答,这肯定会消除您的所有疑问。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)