标签:实现 指令 执行 优点 自己的 静态链接 执行文件 改变 修改
1、动态链接的含义。动态链接就是将链接时的重定位推迟到加载时。相比于静态链接,动态链接的一个优点是可以节省内存。因为共享文件的代码可以共享。使用动态链接的时候,可执行文件和共享文件都会加载到内存。但是,如果很多可执行文件都使用了同一个动向文件的时候,共享文件的代码部分只需要装载一次,这样就达到了节省内存的目的。在这里,共享文件的数据部分在每个可执行文件中都要保存一份。所以,共享文件中跟自己的数据有关的代码就可能会变化,因为数据的地址不确定。一旦变化,就不能达到代码共享的目的了。所以,在这里,一般共享文件是地址无关代码。
2、地址无关代码。目的是指令部分在装载时不需要因为装载地址的改变而改变,所以应该把指令中那些需要修改的部分分离出来跟数据放在一起,这样指令部分就可以保持不变。这种技术就叫地址无关代码技术。下面分几种情况介绍如何实现地址无关:
(1)
标签:实现 指令 执行 优点 自己的 静态链接 执行文件 改变 修改
原文地址:http://www.cnblogs.com/jianglangcaijin/p/5996272.html