第七章 链接 姓名:王玮怡 学号:20135116 一、关于链接 1、含义 链接是将各种代码和数据部分收集起来并组合成为一个单一文件的过程,这个文件可被加载(或被拷贝)到存储器并执行。链接是由链接器程序自动执行的。 2、执行时间 编译时 加载时 运行时 二、编译器驱动程序 驱动编译器:代表用户在需要 ...
分类:
其他好文 时间:
2016-04-09 15:10:52
阅读次数:
217
《深入理解计算机系统》第七章 链接 链接是将各种代码和数据部分收集起来并组合成为一个单一文件的过程,这个文件可被加载(货被拷贝)到存储器并执行。 链接的时机 编译时,也就是在源代码被翻译成机器代码时 加载时,也就是在程序被加载器加载到存储器并执行时 运行时,由应用程序执行 链接器使分离编译称为可能。 ...
分类:
其他好文 时间:
2016-04-09 13:49:33
阅读次数:
182
原作者:Eli Bendersky
http://eli.thegreenplace.net/2011/11/03/position-independent-code-pic-in-shared-libraries/
在之前的文章里我已经描述过在将共享库载入程序地址空间时需要特殊的处理。简而言之,在链接器创建共享库时,它不能预先知道这个库将在哪里载入。这给在库里访问数据与代码带来了麻烦,应该使...
分类:
其他好文 时间:
2016-04-08 15:10:19
阅读次数:
268
第七章 链接 注:作者:臧文君,原创作品转载请注明出处。 一、概述 1、链接(linking):是将各种代码和数据部分收集起来并组合成为一个单一文件的过程,这个文件可被加载或被拷贝到存储器并执行。 2、链接可以执行于编译时、加载时和运行时。 3、链接器(linker):分离编译。 链接通常是由链接器 ...
分类:
其他好文 时间:
2016-04-08 00:48:31
阅读次数:
224
在第七章链接中,链接可以在编译时由经他编译器完成,也可以在加载时和运行时由动态链接器来完成。链接器处理可以为目标文件的二进制文件,它有三种不同的形式:可重定位和可执行和共享的。 链接器的两个主要的任务是符号解析和重定位,符号解析将文件中的每个全局符号都绑定到一个唯一的定义,而重新定位确定每个符号的最 ...
分类:
其他好文 时间:
2016-04-07 13:18:53
阅读次数:
164
《深入理解计算机系统》第七章 链接是将各种代码和数据部分收集起来并组合成为一个单一文件的过程,这个文件可被加载(或拷贝)到存储器并执行。 链接的时机 编译时,也就是在源代码被翻译成机器代码时 加载时,也就是在程序被加载器加载到存储器并执行时。 运行时,由应用程序执行。 在现代系统中,链接是由链接器自 ...
分类:
其他好文 时间:
2016-04-07 07:01:00
阅读次数:
309
一.几个重要的基本概念 链接:链接是将各种代码和数据部分收集起来并组合成为一个单一文件的过程,这个文件可以被加载到存储器中并执行。 编译器驱动程序:编译的过程可以分为以下几个步骤:1.语言预处理器 2.编译器 3.汇编器 4.链接器 静态链接:以一组可重定位目标文件和命令行参数作为输入,生成一个完全 ...
分类:
其他好文 时间:
2016-04-07 01:28:43
阅读次数:
177
连接 1.连接:将各种代码和数据部分收集起来并组合成为一个单一文件的过程。这个文件可被加载或拷贝到存储器并执行。 2.连接可以执行于编译时,也就是在源代码被翻译成机器代码。也可以执行于加载时,也就是程序被加载器加载到存储器并执行时执行于运行时,有应用程序来执行。 3.连接是由链接器的程序自动执行的。 ...
分类:
其他好文 时间:
2016-04-07 01:01:24
阅读次数:
171
1、链接器脚本文件的组成: 基本构成:段:代码段.text 数据段.data bss段 .bss 起始链接地址 对齐 变量 代码段首文件 2、实例文件: SECTIONS{ . = 0x0; //设置程序起始链接地址,=左右两边要空格 . = ALIGN(4);//,设置代码段四字节对齐,=左右两边 ...
分类:
其他好文 时间:
2016-04-06 13:10:28
阅读次数:
163
《深入理解计算机系统》Chapter 7 读书笔记 链接是将各种代码和数据部分收集起来并组合成为一个单一文件的过程,这个文件可被加载(货被拷贝)到存储器并执行。 链接的时机 编译时,也就是在源代码被翻译成机器代码时 加载时,也就是在程序被加载器加载到存储器并执行时 运行时,由应用程序执行 链接器使分 ...
分类:
其他好文 时间:
2016-04-05 22:46:45
阅读次数:
184