链接重定位

符号解析完成后,可进行重定位工作,分三步

1:合并相同的节

将集合E的所有目标模块中相同的节合并成新节

   例如,所有.text节合并作为可执行文件中的.text

2:对定义符号进行重定位(确定地址)

确定新节中所有定义符号在虚拟地址空间中的地址

  例如,为函数确定首地址,进而确定每条指令的地址,为变量确定首地址

完成这一步后,每条指令和每个全局变量都可确定地址

3:对引用符号进行重定位(确定地址)

修改.text节和.data节中对每个符号的引用(地址)

   需要用到在.rel_data.rel_text节中保存的重定位信息

 



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值