1. 库的介绍 库是写好的现有的,成熟的,可以复用的代码。现实中每个程序都要依赖很多基础的底层库,不可能每个人的代码都从零开始,因此库的存在意义非同寻常。 本质上来说库是一种可执行代码的二进制形式,可以被操作系统载入内存执行。库有两种:静态库(.a、.lib)和动态库(.so、.dll)。 wind ...
分类:
其他好文 时间:
2019-01-03 21:34:08
阅读次数:
239
locate命令
?-i 不区分大小写的搜索
?-n N 只列举前N个匹配项目
?-r 使用基本正则表达式
?实时查找工具,通过遍历指定路径完成文件查找
?特点:
? 查找速度略慢
? 精确查找
? 实时查找
?Stream EDitor:
?P: 打印模式空间开端至\n内容,并追加到默认输出之前
?h: 把模式空间中的内容覆盖至保持空间中
?H:把模式空间中的内容追加至保持空间中
?g: 从保持空间取出数据覆盖至模式空间
?x: 把模式空间中的内容与保持空间中的内容进行互换
?n: 读取匹配到的行的下一行覆盖至模式空间
?N:读取匹配到的行的下一行追加至模式空间
静态和动态链接
?链接主要作用是把各个模块之间相互引用的部分处理好,使得各个模块之间能
够正确地衔接,分为静态链接和动态链接
rpm包管理
?CentOS系统上使用rpm命令管理程序包:
安装、卸载、升级、查询、校验、数据库维护
包查询
-a:所有包
-f:查看指定的文件由哪个程序包安装生成
-p rpmfile:针对尚未安装的程序包文件做查询操作
-c:查询程序的配置文件
-d:查询程序的文档
分类:
其他好文 时间:
2019-01-02 22:16:02
阅读次数:
216
Linux文件系统: Linux:glibc 程序编译方式: 动态链接式编译 静态链接式编译 进程的类型: 终端:硬件设备,在硬件设备上可以关联一个用户接口,从而让用户用此接口与操作系统打交道 与终端相关:通过终端启动 与终端无关:操作引导启动过程当中自动启动 操作系统的组成: 静态:kernel( ...
分类:
系统相关 时间:
2018-12-30 13:21:21
阅读次数:
207
1 库的分类 根据链接时期的不同,库又有静态库和动态库之分。 静态库是在链接阶段被链接的(好像是废话,但事实就是这样),所以生成的可执行文件就不受库的影响了,即使库被删除了,程序依然可以成功运行。 有别于静态库,动态库的链接是在程序执行的时候被链接的。所以,即使程序编译完,库仍须保留在系统上,以供程 ...
分类:
其他好文 时间:
2018-11-22 13:16:05
阅读次数:
229
因为是初次系统的学习Linux内核,过程中遇到了一些常常出现的名词。似曾相识,但对他们的含义又不是非常清楚。因此,将搜索到的内容进行一下汇总。 1.vmlinux vmlinux是一个包括linux kernel的静态链接的可运行文件。文件类型是linux接受的可运行文件格式之中的一个(ELF、CO ...
分类:
系统相关 时间:
2018-11-13 15:19:47
阅读次数:
217
对于一个可执行文件,可以收集到的最有用的信息之一,就是它的导入表。导入函数是一个程序所使用的但存储在另一程序中的那些函数,比如包含了对于很多程序都通用的一些代码函数库代码库可以通过链接方式,连接到主程序中。 程序员选择将一些导入函数链接到他们编写的程序中,这让他们不必重新再多个程序重复实现特定功能。 ...
分类:
其他好文 时间:
2018-10-30 20:02:55
阅读次数:
109
链接库本质上是一段可执行的二进制代码,可以被操作系统载入内存执行。按加载的时机不同,链接库可以分为静态链接库和动态链接库。 静态链接库:编译过程中加载进可执行文件的库(静态库省去了运行时加载的消耗,但会导致可执行文件体积增大)动态链接库:程序运行过程中,动态加载进内存的库(动态库加载需要资源消耗,但 ...
分类:
系统相关 时间:
2018-10-26 22:19:07
阅读次数:
262
预处理—->编译—->汇编—->链接 预处理:编译器将C程序的头文件编译进来,还有宏的替换 编译:这个阶段编译器主要做词法分析、语法分析、语义分析等,在检查无错误后后,把代码翻译成汇编语言 汇编:汇编语言变成机器语言 链接:将编译阶段生成的文件连接为一个整体文件 静态链接和动态链接的区别:静态链接和 ...
分类:
编程语言 时间:
2018-10-11 13:39:02
阅读次数:
160
2018 2019 1 20165312 《信息安全系统设计基础》第一周学习总结 ===== 一、完成蓝墨云测试时遇到的问题 1.在做共享库的时候, 时出现 的问题 通过百度找到解决方案: 我们将文件libmyhello.so复制到目录/usr/lib中: 再次运行 参考 "Linux下的静态链接库 ...
分类:
其他好文 时间:
2018-09-24 00:31:35
阅读次数:
187
链接库 Linux下,大多数函数的头文件的默认路径是/usr/include/,而库文件的默认路径是/usr/lib/,但并不是所有的情况都是这样的。因此,在使用gcc编译时,必须为其制定所需要的头文件和库文件的路径。 gcc采用搜索目录的办法来查找所需要的文件,-I选项可以向gcc的头文件搜索路径 ...
分类:
其他好文 时间:
2018-09-23 13:52:43
阅读次数:
206