静态连接器动态连接器
来源:互联网 发布:网络程序员 编辑:程序博客网 时间:2024/04/30 02:42
1 链接器:
连接器读取可重定位对象文件的集合,然后链接它们,输出在一个可执行文件中。英文:The linker reads a collection of relocatable object files and links them together into an output executable file.
2 链接器中的符号,包括三种,分别为:
1)定义的全局变量
2)引用的全局变量
3)类内全局变量
3 由.o文件链接为可执行文件,要有一个符号解析(Symbol resolution) 的过程。
4 静态链接器:
静态链接器中包含新定义的a.c文件二进制信息,即a.o文件,还包括a.c文件引用的其他文件,假如引用了printf函数,则还包括printf.o文件等信息。如果此应用程序的另一个文件也需要这个printf函数,则也需要加载到这个Linker中。因此静态链接,耗内存多;生成的Linker文件大。
动态链接器:
动态链接器中包含新定义的a.c文件二进制信息,即a.o文件,但是不是包括prinft.o文件,而是仅仅包括它的重定位信息和符号表信息。在程序加载后,根据重定位信息,确定printf.o在内存中的最终地址,当运行到这个a.c文件时,才根据这个地址和符号表信息去加载对应的二进制数据到内存;如果另外一个线程也需要这个printf.o文件,则直接从这个内存地址中读取,实现资源共享。因此动态链接库,又称为动态共享库。因此动态链接库耗内存小。
0 0
- 静态连接器动态连接器
- Android动态连接器linker与静态连接器ld
- 连接器
- Linkers 连接器
- mysql 连接器
- oracle连接器
- 26. 连接器
- socket 连接器
- CompactPCI连接器
- 内核连接器
- 连接器脚本
- 连接器脚本
- 连接器脚本
- java连接器
- tomcat连接器
- ARM 连接器
- 连接器脚本
- 连接器脚本
- 神经网络深入(连载2)直接编码
- char型和数值型之间的转换
- (6)Dojo学习之DOM操作
- 神经网络深入(连载3)间接编码
- Pandas写入DataFrame到MongoDB数据库
- 静态连接器动态连接器
- Android自定义View之ListView实现时间轴效果:我只是个送快递的。
- 第一章 Activity的生命周期和启动模式
- SQL TRUNCATE TABLE和DELETE的区别
- 阿尔法套利简介
- CSS基础总结
- 数独程序 Hodoku 的汉化
- 【设计模式小结】—-结构型模式
- 2016.3 idea 自动格式化代码插件