【问题标题】:Meaning of ELF NT_FILE notesELF NT_FILE 注释的含义
【发布时间】:2016-04-17 10:06:16
【问题描述】:

例如在 ELF 核心转储中,我们有如下内容:

  Start         End Page Offset
0x08048000  0x08049000  0x00000000
    /hshare/prog
0x08049000  0x0804a000  0x00000000
    /hshare/prog

什么映射到什么?

【问题讨论】:

    标签: linux elf


    【解决方案1】:

    什么映射到什么

    您实际上是在查看崩溃时二进制文件的 /proc/self/maps 的内容。

    在您的情况下,prog 非常小,以至于它的 .text.data 可以放在一个页面上。因此progmmaped 两次:一次对.text 具有r-x 权限(实际上它是第一个PT_LOAD 段,因为.text 在链接后没有任何意义),一次用于.data 和@ 987654332@(第二个PR_LOAD 段)具有rw- 权限。

    查看readelf -Wl prog 的输出可能会更清楚。

    如果您使prog 更大(例如,通过使用带有-static 的完全静态链接)并使其成为核心转储,您将看到两个映射现在将具有不同的Page Offset

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-10-15
      相关资源
      最近更新 更多