.so文件的基本理解,使用。

.so文件的基本理解,使用。

一. 基本概念

Linux下的.so是基于Linux下的动态链接,其功能和作用类似与windows下.dll文件。

代码编译,链接,最后生成可执行文件;这个可执行文件就可看作是一个静态链接,因为代码里所有的函数变量都在这个可执行文件中。但这样会带来一个问题,就是如果项目的工程过大,写了太多的函数,但在程序的实际运行过程中,这些函数不一定都会用到,就会导致内存的大大的浪费,可能你的可执行文件有10M,但是只用了1M,其余部分都没用。于是动态链接库应运而生。不过windows下文件是.dll,而linux下叫.so。

动态链接库有啥好处呢?参考链接(https://www.cnblogs.com/liuzhenbo/p/11031052.html)

1. 可以实现进程之间的资源共享。

什么概念呢?就是说,某个程序的在运行中要调用某个动态链接库函数的时候,操作系统首先会查看所有正在运行的程序,看在内存里是否已有此库函数的拷贝了。如果有,则让其共享那一个拷贝;只有没有才链接载入。这样的模式虽然会带来一些“动态链接”额外的开销,却大大的节省了系统的内存资源。C的标准库就是动态链接库,也就是说系统中所有运行的程序共享着同一个C标准库的代码段。

2. 将一些程序升级变得简单。用户只需要升级动态链接库,而无需重新编译链接其他原有的代码就可以完成整个程序的升级。Windows

🌸 相关推荐 🌸

如何启用和禁用锁屏 Android
bt365体育在线官网

如何启用和禁用锁屏 Android

📅 07-03 👀 9045
探索ins软件滤镜:如何找到并使用它们?
bt365体育在线官网

探索ins软件滤镜:如何找到并使用它们?

📅 07-04 👀 1977
世预赛各洲规则一览 欧洲最晚开赛+亚洲最复杂
外勤365下载安装版本

世预赛各洲规则一览 欧洲最晚开赛+亚洲最复杂

📅 06-28 👀 755