0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

驱动动模块之间如何更改模块挂载顺序

麦辣鸡腿堡 来源:嵌入式Linux系统开发 作者:Jasonangel 2023-09-28 16:54 次阅读

如果驱动模块之间有依赖,需要更改模块挂载顺序,有三种方式:

1、增加一个优先级,比如 8。或者把自己的驱动模块声明成其他优先级,也就是不用 module_init 去声明,可以用 fs_initcall
去声明。

2、对于同一优先级的驱动模块,可以在 Makefile 中更改其编译和链接的顺序,就会切换其挂载的顺序。(静态编译)

3、动态加载驱动模块:等 Linux 系统起来以后,手动执行 insmod 和 rmmod
即可挂载和卸载驱动,顺序自己决定。测试成功后,再搞到内核中静态编译。

虽然可以更改挂载顺序,但还是希望大家写驱动模块的时候,能够做到高内聚、低耦合,自己的模块最好不要依赖其他模块,防止其他模块加载失败导致自己的模块不可用。

如何看驱动挂载顺序?有两种方式:

1、找到编译后的 Linux 内核源码,根目录下面有个 System.map 文件,这里记载了 Linux
内核所做的所有的事情,是按顺序记载的(也有可能在其他输出目录)。

一共有三列:地址、区域、操作。在操作中我们可以看到我们声明的驱动的名字。

图片

2、如果你驱动模块有加一些打印,可以直接看 log。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 模块
    +关注

    关注

    7

    文章

    2056

    浏览量

    45712
  • 驱动
    +关注

    关注

    11

    文章

    1613

    浏览量

    83833
  • Linux
    +关注

    关注

    85

    文章

    10263

    浏览量

    205820
收藏 人收藏

    评论

    相关推荐

    DM368板子DDR大小更改模块挂载失败

    更改后,上面四个模块为什么挂载失败?是不是因为内存大小更改后,需要重新配置cmem模块
    发表于 02-21 12:44

    RK3399如何更改U盘挂载路径?

    更改U盘挂载路径?
    发表于 03-07 07:02

    高亮度LED驱动动态及电路集锦

    驱动动态及电路集锦高亮度LED驱动动态及电路集锦
    发表于 02-25 15:57 10次下载

    智能功率模块(IPM)的驱动

    模块(IPM)的驱动(人工智能技术应用专业主要就业岗位)-智能功率模块(IPM)的驱动与保护,仅提供参考!!
    发表于 09-30 13:18 66次下载
    智能功率<b>模块</b>(IPM)的<b>驱动</b>

    CC link系统RS-232接口模块用户手册(无顺序协议模式篇)

    模块用户手册(无顺序协议模式篇) 产品规格书
    发表于 08-26 09:49 1次下载
    CC link系统RS-232接口<b>模块</b>用户手册(无<b>顺序</b>协议模式篇)

    基于顺序多路复用采样保持缓冲器的PLC模拟输出模块设计

    顺序多路复用采样保持缓冲器的PLC模拟输出模块设计.zip》资料免费下载
    发表于 09-06 10:53 0次下载
    基于<b>顺序</b>多路复用采样保持缓冲器的PLC模拟输出<b>模块</b>设计

    如何使用Arduino轻松更改蓝牙模块名称

    更改蓝牙模块名称.zip》资料免费下载
    发表于 12-16 10:33 0次下载
    如何使用Arduino轻松<b>更改</b>蓝牙<b>模块</b>名称

    更改HC 05蓝牙模块的名称和密码

    更改HC 05蓝牙模块的名称和密码.zip》资料免费下载
    发表于 02-02 14:22 0次下载
    <b>更改</b>HC 05蓝牙<b>模块</b>的名称和密码

    如何使用M5StickC ESP32模块通过按钮更改LED亮度

    模块通过按钮更改LED亮度.zip》资料免费下载
    发表于 06-29 11:27 0次下载
    如何使用M5StickC ESP32<b>模块</b>通过按钮<b>更改</b>LED亮度

    单模光模块和多模光模块之间的区别

    模块的应用越来越广泛。而光模块类型、传输数据也是越来越多样化。40G光模块、100G光模块;单模光模块、多模光模块等等。今天,给大家介绍的是单模光模块和多模光模块,这两者之间的区别是什么。
    发表于 05-03 10:36 2.9w次阅读

    一文带你了解电机驱动芯片和电机驱动模块

    驱动芯片和电机驱动模块? 电机驱动芯片是集成有CMOS 控制电路和DMOS 功率器件的芯片,利用它可以与主处理器、电机和增量型编码器构成一个完整的运动控制系统。可以用来驱动直流电机、步进
    的头像 发表于 07-18 14:46 1.4w次阅读

    如何实现模块模块之间点对点的通信

    模块模块之间点对点的通信。
    的头像 发表于 02-28 10:48 2834次阅读

    GPRS模块和GSM模块之间的区别

    模块是将GSM射频芯片,基带处理芯片,存储器,放大器设备等集成在基板上的功能模块,以提供独立的OS,GSM射频处理,基带处理和标准接口。
    的头像 发表于 07-13 10:48 2672次阅读

    电机驱动模块有哪些

    驱动模块有哪些 电机的驱动模块通常有晶体管模块、晶闸管(可控硅)模块、IGBT模块,当然对于小型微特电机也用集成驱动模块驱动电路的基本任务,就是将信息电子电路传来的信号按照其控制目标的要求
    发表于 05-08 14:50 989次阅读

    驱动模块的作用

    驱动模块的作用  驱动模块是一种非常常见的软件模块,用于连接操作系统和硬件设备之间的接口。通常,驱动程序充当操作系统和硬件之间的翻译。他们将来自操作系统的命令翻译为硬件可以理解的指令,并将来自硬件
    的头像 发表于 08-29 10:06 232次阅读