指定 ELF 的装载位置

在 Linux 下,可指定 ELF 的装载位置,包括可执行程序和共享库。这在一定程度上给了程序员控制进程空间地址分配的能力。

直接编译并运行,其内存地址映射如下:

编译时通过 linker 分别指定装载位置,观察运行时的内存地址映射:

可以看到,可执行程序 a.out 和 共享库 liba.so 均按指定的位置被装载。

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据