首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >应用程序在运行时加载内核模块的要求是什么

问应用程序在运行时加载内核模块的要求是什么
EN

Stack Overflow用户
提问于 2013-04-03 13:44:00
回答 1查看 132关注 0票数 2

有时我观察到,当应用程序运行或调用任何内核模块函数时,相应的内核模块会自动加载。

我想构建一个类似的内核模块,当我的应用程序执行并调用它的ioctls时,它将自动加载。

实际上我想知道,我需要在我的内核模块中写些什么,这样它才能在运行时由我的应用程序自动加载。

我找了很久,但没有找到任何令人满意的东西。

EN

回答 1

Stack Overflow用户

发布于 2013-04-03 14:37:57

要搜索的关键字是kmod,它是Linux内核的一部分,负责处理动态加载内核模块的请求。

这里有太多的细节无法在答案中列出,但是可以看看Linux Device Drivers, 2nd Edition' book, chapter 11,它详细介绍了内核模块自动加载。

注意,模块加载请求必须来自内核内部。因此,如果您在自定义模块中有一个设备驱动程序,但是没有加载它,那么内核就无法知道如何将ioctl请求与您的驱动程序相匹配。但是假设您有一个驱动程序,一些ioctl函数拆分为不同的模块A和B,可以插入主模块A来提供设备接口,然后当向驱动程序A请求ioctl时,它可以使用kmod机制自动加载包含ioctl函数的附加模块B

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15779724

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档