免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3787 | 回复: 2

请问一下对于一个二进制可执行文件的load address和link address的区别 [复制链接]

论坛徽章:
0
发表于 2010-10-26 20:04 |显示全部楼层
如题。

我在看这个页面http://pdos.csail.mit.edu/6.828/2010/labs/lab1/ 的Link vs. Load Address这个段落,load address倒是看懂了,link address是什么东东。

谁能清晰的解释下么,谢谢。

论坛徽章:
0
发表于 2010-10-27 08:31 |显示全部楼层
额。。不是好多人想参与学习mit6.828么。一起看看吧。

论坛徽章:
0
发表于 2010-10-27 09:00 |显示全部楼层
看了下,感觉大概是这个意思。
load address,表示一个已确定对象的实际加载地址。如C中可执行程序的main函数的地址,在编译完成的时候其地址已经确认(当然在系统中这是一个逻辑地址)
link address,表示一个未确定对象的应该加载的地址。如你使用C动态库中的printf函数的地址。在编译完成的时候不能确定其地址,因为它的实体是在动态链接库中,只能给它规定一个应该加载的地址,在程序加载的时候才能真正确认是否可以加载在这个地址上(可能出现动态库找不到的情况,这时候就加载错误了)
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP