读书人

深入了解计算机系统-程序链接

发布时间: 2012-07-28 12:25:13 作者: rapoo

深入理解计算机系统-程序链接
链接

就是将不同部分的代码和数据手机和组合成为一个单一文件的过程,这个文件可被加载到存储器并执行。

链接过程可以在如下时间执行:

    编译时:在源代码翻译成机器代码时加载时:程序被加载器加载到存储器并执行时运行时:由应用程序去完成这个工作,OS提供系统调用接口
静态链接

以一组可重定位目标文件和命令行参数作为输入,生成一个完全链接的可以加载和运行的可执行目标文件作为输出。输入的可重定位目标文件由各种不同的代码和数据节组成。

其主要完成如下两个任务:

    符号解析:目标文件定义和引用符号。将每个符号引用和一个符号定义联系起来。即为:将程序中出现的存储单元名字和真正的定义处联系起来,主要是作用域问题。重定位:通过把每个符号定义和一个存储器位置联系起来,然后修改所有对这个符号的引用,使得他们指向这个存储器位置,从而从定位这些数据节。
目标文件

可重定位目标文件可执行目标文件共享目标文件动态链接

读书人网 >操作系统

热点推荐