为什么代码段的地址为零?

时间:2017-04-01 02:46:30

标签: gcc position-independent-code

在我更新了我的kali linux之后,我使用gcc来编译我的程序。在我更新系统之前,我使用objdump来反汇编程序,.text地址来自0x08048 ...,但之后,.text地址来自0x00000 ...,gcc版本从6.1.1更改为6.3,怎么了?为什么会这样?

1 个答案:

答案 0 :(得分:1)

我相信这是因为新版本默认使用execve构建可执行文件(prooflink)。理论上,位置独立性应该可以提高系统的安全性。