网站首页 > linux / 正文
由于动态链接库存在下面优点,Linux可执行程序经常使用动态库:
- 更加节省内存并减少页面交换;
- so文件与可执行文件独立,只要输出接口不变(即名称、参数、返回值类型和调用约定不变),更换so文件不会对可执行文件造成任何影响,因而极大地提高了可维护性和可扩展性;
- 不同编程语言编写的程序只要按照函数调用约定就可以调用同一个so函数;
- 适用于大规模的软件开发,使开发过程独立、耦合度小,便于不同开发者和开发组织之间进行开发和测试。
- 节约磁盘空间:当应用程序使用动态链接时,多个应用程序可以共享磁盘上单个so副本。相比之下,当应用程序使用静态链接库时,每个应用程序要将库代码作为独立的副本链接到可执行镜像中。
那么你们知道可执行程序在执行时是怎么找到这些so文件的吗?其实Linux为了可执行文件运行时寻找so文件可以通过以下三类路径去寻找的,按照顺序分别是:
(1) 环境变量LD_LIBRARY_PATH指定的路径
export LD_LIBRARY_PATH=LIBPATH1:LIBPATH2:$LD_LIBRARY_PATH
(2) 文件 /etc/ld.so.cache中指定的路径
可以修改文件/etc/ld.so.conf或者目录/etc/ld.so.conf.d下面的.conf文件,然后再执行ldconfig命令更新 /etc/ld.so.cache
(3) 默认路径/lib,/usr/lib
Tags:linux查看网络连接
猜你喜欢
- 2024-11-26 Linux查找find命令全面剖析
- 2024-11-26 知了堂|Linux系统入侵后的排查过程
- 2024-11-26 Linux常用查找文件方法总结
- 2024-11-26 Linux下查看Zookeeper运行相关信息
- 2024-11-26 超详细的zabbix监控Linux服务器TCP连接状态教程
- 2024-11-26 Linux实战003:VMware不好操作?教你远程连接Linux服务器
- 2024-11-26 MySQL linux 开启远程连接(有效)
- 2024-11-26 Linux conntrack 功能简介与操作
- 2024-11-26 一个shell脚本轻松查看连接linux的远程主机数
- 2024-11-26 Linux 下静态链接和动态链接的原理及应用