内核insmod 第二种方法
方法二:
将demo.ko文件拷贝到 /lib/module/`uname -r`/目录下,这里,`uname -r`意思为在终端中输入此命令执行的结果后显示的内核版本及名称,例如exynos 4412中显示的为3.5.0-FriendlyARM。
然后命令行中输入如下命令:
depmod
(会在/lib/modules/`uname -r`/目录下生成modules.dep和modules.dep.bb文件,表明 模块的依赖关系)
最后执行:
modprobe demo(注意:这里不用输入.ko后缀)
两种方法的区别:
- modprobe和insmod类似,都是用来动态加载驱动模块的,区别在于modprobe可以解决load module的依赖关系,它是通过 /lib/modules/`uname -r`/modules.dep和modules.deo.bb文件来查找依赖关系的;而insmod不能解决依赖关系。
- 也就是说,如果你确定你要加载的驱动模块不依赖其他驱动模块的话,既可以insmod也可以modprobe;但是insmod可以在任何目录下执行,更方便一些,而如果使用的加载的驱动模块还依赖其他.ko驱动模块的话,将模块拷贝到上述的特定目录比较方便,depmod之后再modprobe xxx.ko即可。也可以一个一个使用insmod命令插入模块。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
2020-04-08 pthread_mutex_t
2020-04-08 查看.so 32位64位
2020-04-08 加密版sqlite
2020-04-08 类的消息处理-迈向优秀的程序员的方法
2020-04-08 c oracle proc
2019-04-08 sqlite.c sqlite.h
2019-04-08 ACE自适配通信环境