【原创】记录下 /proc/self/maps 文件中几个权限字段的含义
文件内容:
00400000-0040b000 r-xp 00000000 08:02 1305678 /bin/cat 0060a000-0060b000 rw-p 0000a000 08:02 1305678 /bin/cat 0060b000-0060c000 rw-p 00000000 00:00 0 0080a000-0080b000 rw-p 0000a000 08:02 1305678 /bin/cat 00e08000-00e29000 rw-p 00000000 00:00 0 [heap] 3d18800000-3d18822000 r-xp 00000000 08:02 1175128 /lib64/ld-2.15.so 3d18a22000-3d18a23000 r--p 00022000 08:02 1175128 /lib64/ld-2.15.so 3d18a23000-3d18a25000 rw-p 00023000 08:02 1175128 /lib64/ld-2.15.so
权限字段:
r-xp:代表该段内存可读可执行,比如代码段;
r--p:代表该段内存只能可读,比如常量数据;
rw-p:代表该段内存可读可写,比如全局变量;
---p:代表该段内容没有任何权限或者没有产生任何内存映射;
注意事项:
上述权限字段末尾的p是private(和shared相对)单词的首字母,代表该段内存是私有的,即当某个进程修改了某页内存后,对应的页会发生一个Copy-On-Write行为,这种变化对于其他进程而言是看不见的。
版权声明:除非注明,本文由( blogdaren )原创,转载请保留文章出处。