动态链接及静态链接

Posted 静悟生慧

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了动态链接及静态链接相关的知识,希望对你有一定的参考价值。

静态链接就是在编译链接时直接将需要的执行代码拷贝到调用处,优点就是在程序发布的时候就不需要的依赖库,也就是不再需要带着库一块发布,程序可以独立执行,但是体积可能会相对大一些。


动态链接就是在编译的时候不直接拷贝可执行代码,而是通过记录一系列符号和参数,在程序运行或加载时将这些信息传递给操作系统,操作系统负责将需要的动态库加载到内存中,

然后程序在运行到指定的代码时,去共享执行内存中已经加载的动态库可执行代码,最终达到运行时连接的目的。优点是多个程序可以共享同一段代码,而不需要在磁盘上存储多个拷贝,缺点是由于是运行时加载,可能会影响程序的前期执行性能。

以上是关于动态链接及静态链接的主要内容,如果未能解决你的问题,请参考以下文章

静态链接库与动态链接库的区别及动态库的创建(转)

Qt 共享库(动态链接库)和静态链接库的创建及调用

Linux-静态链接库和动态链接库

动态链接及其部分实现细节

动态链接及其部分实现细节

Linux动态链接和静态链接简析