首 页 行业热点 新车 试驾评测 养车用车 车型库

一文看懂[driver]linux内核动态加载模块【值得收藏】

发布网友

我来回答

1个回答

热心网友

一、安装内核模块

通常步骤如下:

只需编译特定的模块,快速方法是:

注意:避免执行命令make moles_install,以防意外删除系统所有模块,仅安装新编译的模块。

二、模块安装完成,即可加载

关键命令包括:depmod, modprobe, lsmod

2.1 depmod:生成moles.dep和map文件,用于记录模块间依赖,depmod读取/lib/moles/version目录下的所有模块,创建moles.dep文件和相关map文件。

2.2 modprobe:根据moles.dep加载模块,显示可加载模块清单,modprobe无需指定模块路径或后缀,而insmod需指定。

2.3 lsmod:显示当前加载的模块列表。

2.4 modinfo:展示内核模块信息。

三、动态加载实现

内核自动加载功能,通过Verdon ID、Device ID等识别设备,驱动程序定义支持设备ID,depmod生成alias文件,udevd通过select()阻塞等待数据可读,加载相应模块。

四、模块加载配置

/etc/modprobe.conf用于配置加载命令、模块别名等,允许修改自己的配置。

五、开机自动挂载

修改redhat系统中的/etc/rc.d/rc.sysinit文件或在suse中编辑/etc/sysconfig/kernel文件,添加需要开机加载的模块。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com