2.4. 共享库
用于 Real Time 的 RHEL 称为动态共享对象(DSO),是预编译代码块的集合,称为功能。这些功能可在多个程序中重复使用,并在运行时加载或编译时间。
Linux 支持以下两个库类:
- 动态或共享库:作为可执行文件之外的独立文件存在。这些文件加载到内存中,并在运行时映射。
- 静态库:是在编译时静态链接到程序的文件。
ld.so
动态链路器加载程序所需的共享库,然后执行代码。然后,DSO 功能会通过映射到进程的地址空间来加载内存中的库,多个进程可以引用对象。您可以使用 LD_BIND_NOW
变量,将动态库配置为编译时加载。
在程序初始化前评估符号可以提高性能,因为如果内存页面位于外部磁盘上,则在运行时评估可能会导致延迟。
其他资源
-
ld.so(8)
man page