首页 > 代码库 > 《程序员自我修养》阅读笔记-动态链接
《程序员自我修养》阅读笔记-动态链接
1、动态链接的含义。动态链接就是将链接时的重定位推迟到加载时。相比于静态链接,动态链接的一个优点是可以节省内存。因为共享文件的代码可以共享。使用动态链接的时候,可执行文件和共享文件都会加载到内存。但是,如果很多可执行文件都使用了同一个动向文件的时候,共享文件的代码部分只需要装载一次,这样就达到了节省内存的目的。在这里,共享文件的数据部分在每个可执行文件中都要保存一份。所以,共享文件中跟自己的数据有关的代码就可能会变化,因为数据的地址不确定。一旦变化,就不能达到代码共享的目的了。所以,在这里,一般共享文件是地址无关代码。
2、地址无关代码。目的是指令部分在装载时不需要因为装载地址的改变而改变,所以应该把指令中那些需要修改的部分分离出来跟数据放在一起,这样指令部分就可以保持不变。这种技术就叫地址无关代码技术。下面分几种情况介绍如何实现地址无关:
(1)
《程序员自我修养》阅读笔记-动态链接
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。