Bootstrap

Linux简单插件框架

Linux插件的实现主要依赖运行时加载,程序在运行时控制加载指定的模块,并且可以在不需要该模块时将其卸载。

主要函数:

1. dlopen:用来打开一个动态库,并将其加载到进程的地址空间

2. dlsym:运行时加载的核心部分,可以通过这个函数找到所需要的符号

3. dlclose:将一个已经加载的模块卸载。

4. dlerror:每次调用dlopen,dlsym,dlclose以后,都可以调用dlerror判断上一次调用是否成功。

插件框架的主要思路:

1. 建立一个plugin文件夹,里面存放要加载的插件

2. 每个插件都是一个动态库so,都实现约定好的函数,例如run和help

3. 列出所有插件时遍历plugin文件夹里的所有动态库so,先dlopen,然后dlsym查找help函数并执行

4. 执行插件主要内容就是dlsym查找run函数并执行

参考:

【Linux实验】4、插件框架_插件化架构图linux_MSC419的博客-CSDN博客

;