【Linux】查看操作系统开机时初始化的驱动模块列表的一个方法

这个方法是摸索出来的,也不一定对:

1、驱动层module_init(module_init_function)作为模块初始化,并且提供模块内部初始化的函数名;

2、找到所有驱动目录drivers下所有module_init(module_init_function),在内核6.9.0版本实际上找到1979个:module_init_all_in_drivers_path.txt · r77683962/linux-6.9.0 - Gitee.comicon-default.png?t=O83Ahttps://gitee.com/r77683962/linux-6.9.0/blob/master/module_init_all_in_drivers_path.txt

命令行:

 find drivers  -name "*.c" | xargs -i grep -Hrn "^module_init(" {} > module_inits.txt 

3、从找到的模块函数中添加打印信息;

4、重新编译代码,重启系统,然后可以看到操作系统在驱动初始化时对哪些模块进行了初始化:

 

 

这是完整启动dmesg完整日志:

test_log/dmesg_modules_init.txt · r77683962/linux-6.9.0-testlog - Gitee.comicon-default.png?t=O83Ahttps://gitee.com/r77683962/linux-6.9.0-testlog/blob/c31fe277671c2270aa3b77d07b1727f593850ab7/test_log/dmesg_modules_init.txt内核最上层看到的是系统调用入口,最底层是驱动。

方法也是摸索出来的,不一定对。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值