如何测量分配的页表数量?

问题描述 投票:0回答:1

据我所知,Linux直到需要时才分配页表(分配使用页时按需进行)。我想检查程序执行期间实际上分配了多少页表。您能否让我知道如何测量实际分配的页面数?

linux memory memory-management page-fault
1个回答
0
投票

您可以使用RSS值来计算活动页面表的数量:

RSS是常驻集大小,用于显示有多少内存分配给该进程并在RAM中。它不包括内存换出来了。它确实包括来自共享库的内存只要这些库中的页面实际上在内存中即可。确实包括所有堆栈和堆内存。

使用RSS并划分为页表大小(默认为4KB)。

例如,我想在我的机器上计算tmux的页表:

$ ps aux | grep tmux
da       21995  0.0  0.0  26416  2768 ?        Ss   May17   4:16 tmux

RSS值为2768,如果我们将其除以4:692

但是请注意,RSS也计入共享库。如果我执行cat /proc/21995/maps,将有tmux的内存映射的完整列表,其中大多数是glibc共享库。

参考:

© www.soinside.com 2019 - 2024. All rights reserved.