如何解释内存映射转储输出?

时间:2013-05-01 10:44:33

标签: debugging gcc

我的问题与错误本身无关(我知道它的原因是什么)。

我想知道如何读取这个转储(字段,标志等的意思),它产生的地方(glibc或gcc库)以及我如何从更高层次推断它的错误(例如,某些工具可能会发现此输出有用)。

*** glibc detected *** python: double free or corruption (fasttop): 0x0000000006c4eb90 ***
======= Backtrace: =========
/lib/x86_64-linux-gnu/libc.so.6(+0x7eb96)[0x7f6c3a0a1b96]
/usr/lib/nvidia-current-updates/tls/libnvidia-tls.so.304.88(+0x1cc1)[0x7f6c2e544cc1]
======= Memory map: ========
00400000-00401000 r-xp 00000000 08:07 2238049                          /build/bin/python
00600000-00601000 r--p 00000000 08:07 2238049                          /build/bin/python
00601000-00602000 rw-p 00001000 08:07 2238049                          /build/bin/python
00954000-07625000 rw-p 00000000 00:00 0                                  [heap]
40c14000-40c92000 rw-p 00000000 00:00 0 
7f6c04000000-7f6c041bc000 rw-p 00000000 00:00 0 
7f6c041bc000-7f6c08000000 ---p 00000000 00:00 0 
7f6c08000000-7f6c081bc000 rw-p 00000000 00:00 0 
7f6c081bc000-7f6c0c000000 ---p 00000000 00:00 0 
7f6c0c000000-7f6c0c1bc000 rw-p 00000000 00:00 0 
7f6c0c1bc000-7f6c10000000 ---p 00000000 00:00 0 
7f6c14000000-7f6c14021000 rw-p 00000000 00:00 0 
7f6c14021000-7f6c18000000 ---p 00000000 00:00 0 
7f6c1ab5a000-7f6c1ab5b000 ---p 00000000 00:00 0 
7f6c1ab5b000-7f6c1af5b000 rwxp 00000000 00:00 0 
7f6c1af5b000-7f6c1af5c000 ---p 00000000 00:00 0 
7f6c1af5c000-7f6c1b35c000 rwxp 00000000 00:00 0 
7f6c1b35c000-7f6c1b35d000 ---p 00000000 00:00 0 
7f6c1b35d000-7f6c1b75d000 rwxp 00000000 00:00 0 
7f6c1b75d000-7f6c1b767000 r-xp 00000000 08:05 1314563                    /lib/x86_64-linux-gnu/libnss_nis-2.15.so
7f6c1b767000-7f6c1b967000 ---p 0000a000 08:05 1314563                    /lib/x86_64-linux-gnu/libnss_nis-2.15.so
7f6c1b967000-7f6c1b968000 r--p 0000a000 08:05 1314563                    /lib/x86_64-linux-gnu/libnss_nis-2.15.so
7f6c1b968000-7f6c1b969000 rw-p 0000b000 08:05 1314563                    /lib/x86_64-linux-gnu/libnss_nis-2.15.so
7f6c1b969000-7f6c1b980000 r-xp 00000000 08:05 1314576                    /lib/x86_64-linux-gnu/libnsl-2.15.so

1 个答案:

答案 0 :(得分:2)

proc的手册页有答案。内存映射输出格式在/ proc / [pid] / maps。

的条目中给出

简短的摘要是跨越列:内存范围,权限,偏移量,设备(主要:次要),inode和路径名。