1 , 前言
之前在鹅厂面试过程中,与面试官聊到操作系统方面 ,让我谈谈一些理解 ,面试官提到dlopen 脑子一片空白,平时这些东西真的很少接触,所以在专注于一点时,还是要多了解一些,部分要精! 共勉
2,什么是dlopen ? dlsym ? dlclose ?
其实就是Linux提供的加载和处理动态链接库的系统调用,为了使程序更加方便扩展。
在Linux上 在#include<dlfcn.h>头文件下
#include <dlfcn.h> void *dlopen(const char *filename, int flag); char *dlerror(void); void *dlsym(void *handle, const char *symbol); int dlclose(void *handle);
简答介绍一下这几个函数
在dlopen 函数的参数 flag 分为 : 1 RTLD_LAZY 暂缓决定,等有需要时再解出符号. 2 RTLD_NOW 立即决定,返回前解除所有未决定的符号。
原文:https://www.cnblogs.com/lc-bk/p/13388130.html