更新:
它是一个填充:每个这样的非 rwx 区域前面都有一个可读和/或可写区域,它们一起构成一个 64Mb 段(对于 64 位架构)。
关于SO的一个相关问题:https://stackoverflow.com/q/6568043/251311
我发现有很多虚拟机段没有任何rwx
标志,只是p
:
7f7e98033000-7f7e9c000000 ---p 00000000 00:00 0
Size: 65332 kB
Rss: 0 kB
Pss: 0 kB
Shared_Clean: 0 kB
Shared_Dirty: 0 kB
Private_Clean: 0 kB
Private_Dirty: 0 kB
Referenced: 0 kB
Anonymous: 0 kB
AnonHugePages: 0 kB
Swap: 0 kB
KernelPageSize: 4 kB
MMUPageSize: 4 kB
有什么参考意义吗?
与描述的不同http://www.greenend.org.uk/rjk/tech/dataseg.html,它不是来自共享库的映射,因为它没有附加相应的 fd。它是一个自定义的长时间运行的 C++ 守护进程,但我发现其他一些进程也有类似的使用模式:例如 erlang(其中也有很多)。相比之下,长时间运行的 php-fpm 和 python 进程实际上只有 0 个这样的段。 “它还有哪些其他映射?” --- 其他一切都是预期的和平常的:只是正常的读/写私有段和共享库。