Linux下加载.ko驱动模块的两种方法:insmod与modprobe

加载驱动模块

假设要加载的驱动程序模块名为SHT21.ko
*方法一: 
    进入SHT21.ko驱动模块文件所在的目录,然后直接 insmod SHT21.ko即可
方法二: 
    将SHT21.ko文件拷贝到/lib/module/#uname -r#/目录下
     root@am335x-evm:~# uname -r
     4.9.69-g9ce43c71ae/*uname -r 代表内核版本及名称*/ 
建立依赖关系
    depmod(会在/lib/modules/#uname -r#/目录下生成modules.dep和modules.dep.bb文件,表明模块的依赖关系)
加载驱动
modprobe SHT21(注意这里无需输入.ko后缀)  

两种方法的区别

modprobe和insmod类似,都是用来动态加载驱动模块的,区别在于modprobe可以解决load module时的依赖关系,它是通过/lib/modules/#uname -r/modules.dep(.bb)文件来查找依赖关系的;而insmod不能解决依赖问题。

也就是说,如果你确定你要加载的驱动模块不依赖其他驱动模块的话,既可以insmod也可以modprobe,当然insmod可以在任何目录下执行,更方便一些。而如果你要加载的驱动模块还依赖其他ko驱动模块的话,就只能将模块拷贝到上述的特定目录,depmod后再modprobe。

查看已加载的驱动模块列表
在任何目录下,
lsmod
即可

卸载驱动模块
在任何目录下,
rmmod 即可 ,注意其中”module_name”是lsmod显示的模块名称,而不是对应的ko文件名

自动加载module

在/lib/modules/#uname -r#/目录下的.ko可自动加载
Q1:通过脚本脚本实现的? depmod命令实现...好像是这样的

参考资料
https://blog.csdn.net/lihui126/article/details/45726073

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值