gpt4 book ai didi

elf - 在 ELF 文件中,如何确定 _start 的地址?

转载 作者:行者123 更新时间:2023-12-04 14:21:05 25 4
gpt4 key购买 nike

我一直在阅读 ELF 规范,但无法弄清楚程序入口点和 _start 地址来自哪里。

看起来它们应该在一个非常一致的地方,但我做了一些琐碎的程序,而 _start 总是在不同的地方。

任何人都可以澄清吗?

最佳答案

_start符号可以在任何目标文件中定义。通常它是自动生成的(它对应于 C 中的 main)。您可以自己生成它,例如在汇编源文件中:

.globl _start
_start:
// assembly here

当链接器处理完所有目标文件后,它会查找 _start符号并将其值放入 e_entry领域 elf header .加载器从这个字段中获取地址,并在它完成加载内存中的所有部分并准备好执行文件后调用它。

关于elf - 在 ELF 文件中,如何确定 _start 的地址?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4272316/

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