linux添加ko,Linux下加载.ko驱动模块的两种方式:insmod & modprobe

假设我们要添加的驱动程序模块名为:demo.ko

加载驱动模块

方法一:

进入demo.ko驱动模块文件所在的目录,然后直接terminal执行:

insmod demo.ko

即可。

方法二:

将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命令插入模块。

查看已加载的驱动模块列表

在任何目录下输入如下命令即可:

lsmod

卸载驱动模块

在任何目录下执行如下命令即可:

1. rmmod

rmmod

2. modprobe

modprobe

(会自动解决依赖关系,也会自动卸载相应的依赖模块)

(注意其中module_name是lsmod中显示的模块名称,而不是对应的.ko文件名)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值