csapp 第7章 链接 阅读笔记
第7章 链接
为什么学习关于链接的知识?
- 理解链接器将帮助你构造大型程序
- 理解链接器将帮助你避免一些危险的编程错误
- 理解链接将帮助你理解语言的作用域规则是如何实现的
- 理解链接将帮助你理解其他重要的系统概念。
- 理解链接将使你能够利用共享库。
编译器驱动程序
静态链接
链接器任务
- 符号解析
- 重定位
目标文件
目标文件三种形式:
- 可重定位目标文件
- 可执行目标文件
- 共享目标文件
可重定位目标文件
符号和符号表
符号解析
重定位
重定位由两步组成
- 重定位节和符号定义
- 重定位节中的符号引用
可执行目标文件
加载可执行目标文件
动态链接共享库
从应用程序中加载和链接共享库
- 分发软件
- 构建高性能Web服务器