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