内核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命令插入模块。
标签:模块,ko,modules,uname,内核,第二种,modprobe,insmod 来源: https://www.cnblogs.com/hshy/p/14633271.html