Linux的驱动模块管理:modprobe

由一段脚本開始:
MODULE_PATH=/lib/modules/`uname -r`
if [ ! -f ${MODULE_PATH}/modules.dep.bb ]; then
# depmod — to generate modules.dep and map files
# 产生modules.dep文件和映射文件的程序
        depmod
        sleep 1
fi

modprobe mod_1.ko
modprobe mod_2.ko


机制:

1、modprobedepmod机制的目的是让Linux模块的管理更加便捷。不论是对终端用户、管理员还是发行版的维护者。

2、modprobe能够自己主动载入相关的模块,可是它本身并不知道模块之间的相关性,它是通过读取一个依赖文件来获知这样的相关信息。这个依赖文件由depmod创建。
3、modprobe能够用来载入单个模块,一些依赖性(dependent )模块。或者那些被特别标记(specified tag)了的全部模块。

4、modprobe根据依赖文件modules.dep的描写叙述自己主动载入全部须要的基本模块。假设任一模块载入失败,该过程中载入的全部其它模块会被自己主动卸载。
5、modprobe载入模块的方式有两种:
(1) 载入列表之外的单个模块:一旦模块载入成功,modprobe马上停止载入
(2) 载入列表上的全部模块。带上-r选项,modprobe将自己主动卸载一些具有相关性的模块,效果类似rmmod -r
注意:modprobe -r将会清除已经载入但没用的模块。

原文地址:https://www.cnblogs.com/wzjhoutai/p/7245943.html