gpt4 book ai didi

linux - ELF NT_FILE 注释的含义

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:24:59 24 4
gpt4 key购买 nike

例如在 ELF 核心转储中,我们有这样的东西:

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

什么完全映射到什么?

最佳答案

What is mapped exactly to what

您正在有效地查看崩溃时二进制文件的 /proc/self/maps 的内容。

在您的情况下,prog 非常小,以至于它的 .text.data 可以放在一个页面上。因此 progmmap 编辑了两次:一次具有 .textr-x 权限(实际上它是第一个 PT_LOAD 段,因为 .text 链接后​​没有意义),一次用于 .data.bss (第二个 PR_LOAD 段)具有 rw- 权限。

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

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

关于linux - ELF NT_FILE 注释的含义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36669535/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com