zoukankan      html  css  js  c++  java
  • chapter22:源码与Tarball之(3)-函数库的管理

    一.函数库的两种类型

    (1)静态函数库

    扩展名为libxxx.a

    在编译的时候整合到执行程序中.所以文件会相对比较大.

    可以独立执行.

    如果函数库升级,则整个程序都要重新编译.

    (2)动态函数库

    扩展名为libxxx.so

    可执行文件在要用到函数库的时候才去读取,文件相对小些.

    不能独立执行.函数库的目录也不能改变.

    函数库升级后,可执行文件不用重新编译.所以升级方便.

    目前Linux distribution一般使用动态函数库,因为升级方便.大多数函数库放在/usr/lib, /lib下面,还在很多的函数由kernel提供,也就是放在/lib/modules需.不同版本的内核的函数库很不一样,所以kernel 2.4版本系统不要想将内核升级到2.6.等,很容易因为函数库的不同的导致很多软件不能使用.

    二.如何将函数库先加载到内存中以增加性能

    使用ldconfig与/etc/ld.so.conf可以将常用的函数库先加载到内存中以提高性能.

    三.如何判断一个可执行的程序含有什么动态函数库

    可以使用ldd命令,如我们想要知道/usr/bin/passwod这个程序要用到什么动态函数库,可以这样

    里面可以看到PAM(身份验证)模块.,我们再找出/lib/libc.so.6这个函数相关的函数库(注意它的路径)

    四.验证软件的正确性

    只说明下如何进行验证.

    还是以ntp为例子.官网的md5为下图

    下载后验证为

    两者相同,因此安全.

  • 相关阅读:
    Spring MVC(1)Spring MVC的初始化和流程以及SSM的实现
    Spring(四)Spring与数据库编程
    MyBatis(4)-- 动态SQL
    MyBatis(3)-- Mapper映射器
    MyBatis(2)-- MyBatis配置mybatis-config.xml
    MyBatis(1)-- MyBatis介绍
    计算机网络(2)-- URL、HTTP、HTTPS、HTML
    计算机网络(1)- TCP
    Shell脚本编程
    和为定值的多个数
  • 原文地址:https://www.cnblogs.com/chuiyuan/p/5061318.html
Copyright © 2011-2022 走看看