博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
linux的函数库管理
阅读量:6269 次
发布时间:2019-06-22

本文共 705 字,大约阅读时间需要 2 分钟。

动态和静态函数库

静态函数库的特色:

拓展名:为.a,函数库通常拓展名为lib×××.a类型

编译行为:会直接整合到执行程序当中,所以利用静态函数库编译成的文件会比较大

独立执行的状态:最大的优点就是编译成功的可执行文件可以独立执行,不需要向外部要求读取函数库内容

升级难易度:只要函数库升级了,所有将此函数库纳入的程序都需要重新编译。

动态函数库的特色:

拓展名:.lib××××.so

编译行为:在编译时,程序里面只有一个指向(pointer)的位置而已,也就是当可执行文件当中仅具有指向动态函数库所在的指标而已,并不包含函数库的内容,文件会小。

独立执行的状态:这类函数库编译的程序不能被独立执行,当使用到的时候,程序才会读取函数库,所以函数库文件必须要存在,且函数库的所在目录也不能改变。

升级难易度:容易

目前linux倾向使用动态函数库,因为升级方便,只要动态函数库升级就行,其他软件无需变动。

如果我们将常用到的的动态函数库先加载到内存中,如此一来,当软件要使用函数库就不用从硬盘读取。如何将动态函数库加载到高速缓存当中呢?

1.首先要在/etc/id.so.conf里面写下想要读入高速缓存的动态函数库所在的目录。

2.接下来利用idconfig这个可执行文件将/etc/id.so.conf的数据读入缓存

程序的动态函数库解析:Ldd

如果我想知道/usr/bin/passwd 这个程序含有的动态函数库有哪些,可以这样做

检测软件的正确性:

可通过每个文件独特的指纹验证数据,MD5

转载于:https://www.cnblogs.com/sichenzhao/p/9320381.html

你可能感兴趣的文章
maven项目注意
查看>>
Git学习分享
查看>>
阿里云移动端播放器高级功能---画面控制
查看>>
Ethereum地址是如何生成的
查看>>
峰采 #2
查看>>
高阶组件之属性代理
查看>>
Python 比特币 教程 之一:创建机器人
查看>>
extract-text-webpack-plugin用法
查看>>
java中的多线程你只要看这一篇就够了
查看>>
利用tornado实现表格文件预览
查看>>
深入call apply bind
查看>>
「前端面试题系列6」理解函数的柯里化
查看>>
用友云开发者中心助你上云系列之在线调试
查看>>
【跃迁之路】【724天】程序员高效学习方法论探索系列(实验阶段481-2019.2.14)...
查看>>
个人博客四|注册登录退出功能后台开发
查看>>
工作中常用到的ES6语法
查看>>
Django-Signals信号量
查看>>
flac格式转换mp3格式要用什么软件
查看>>
19. Remove Nth Node From End of List
查看>>
最佳在线图表软件
查看>>