0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

驅(qū)動(dòng)動(dòng)模塊之間如何更改模塊掛載順序

麥辣雞腿堡 ? 來源:嵌入式Linux系統(tǒng)開發(fā) ? 作者:Jasonangel ? 2023-09-28 16:54 ? 次閱讀

如果驅(qū)動(dòng)模塊之間有依賴,需要更改模塊掛載順序,有三種方式:

1、增加一個(gè)優(yōu)先級,比如 8?;蛘甙炎约旱尿?qū)動(dòng)模塊聲明成其他優(yōu)先級,也就是不用 module_init 去聲明,可以用 fs_initcall
去聲明。

2、對于同一優(yōu)先級的驅(qū)動(dòng)模塊,可以在 Makefile 中更改其編譯和鏈接的順序,就會(huì)切換其掛載的順序。(靜態(tài)編譯)

3、動(dòng)態(tài)加載驅(qū)動(dòng)模塊:等 Linux 系統(tǒng)起來以后,手動(dòng)執(zhí)行 insmod 和 rmmod
即可掛載和卸載驅(qū)動(dòng),順序自己決定。測試成功后,再搞到內(nèi)核中靜態(tài)編譯。

雖然可以更改掛載順序,但還是希望大家寫驅(qū)動(dòng)模塊的時(shí)候,能夠做到高內(nèi)聚、低耦合,自己的模塊最好不要依賴其他模塊,防止其他模塊加載失敗導(dǎo)致自己的模塊不可用。

如何看驅(qū)動(dòng)掛載順序?有兩種方式:

1、找到編譯后的 Linux 內(nèi)核源碼,根目錄下面有個(gè) System.map 文件,這里記載了 Linux
內(nèi)核所做的所有的事情,是按順序記載的(也有可能在其他輸出目錄)。

一共有三列:地址、區(qū)域、操作。在操作中我們可以看到我們聲明的驅(qū)動(dòng)的名字。

圖片

2、如果你驅(qū)動(dòng)模塊有加一些打印,可以直接看 log。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 模塊
    +關(guān)注

    關(guān)注

    7

    文章

    2613

    瀏覽量

    47010
  • 驅(qū)動(dòng)
    +關(guān)注

    關(guān)注

    12

    文章

    1790

    瀏覽量

    84908
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11123

    瀏覽量

    207909
收藏 人收藏

    評論

    相關(guān)推薦

    Linux模塊相關(guān)命令 Linux驅(qū)動(dòng)模塊的編寫與掛載

    Linux模塊相關(guān)命令 Linux驅(qū)動(dòng)模塊的編寫與掛載
    發(fā)表于 10-01 12:20 ?361次閱讀
    Linux<b class='flag-5'>模塊</b>相關(guān)命令 Linux<b class='flag-5'>驅(qū)動(dòng)</b><b class='flag-5'>模塊</b>的編寫與<b class='flag-5'>掛載</b>

    電光調(diào)Q模塊調(diào)Q驅(qū)動(dòng)模塊電光模塊

    電源驅(qū)動(dòng)模塊
    深圳艾克思科技有限責(zé)任公司
    發(fā)布于 :2023年11月02日 16:09:12

    DM368板子DDR大小更改模塊掛載失敗

    打開/dev/cmem設(shè)備失敗。想請教下,DDR大小更改后,上面四個(gè)模塊為什么掛載失敗?是不是因?yàn)閮?nèi)存大小更改后,需要重新配置cmem模塊?
    發(fā)表于 02-21 12:44

    高亮度LED驅(qū)動(dòng)動(dòng)態(tài)及電路集錦

    高亮度LED驅(qū)動(dòng)動(dòng)態(tài)及電路集錦高亮度LED驅(qū)動(dòng)動(dòng)態(tài)及電路集錦
    發(fā)表于 02-25 15:57 ?10次下載

    單模光模塊和多模光模塊之間的區(qū)別

    隨著光通訊、數(shù)據(jù)中心的發(fā)展,光模塊的應(yīng)用越來越廣泛。而光模塊類型、傳輸數(shù)據(jù)也是越來越多樣化。40G光模塊、100G光模塊;單模光模塊、多模光
    發(fā)表于 05-03 10:36 ?3w次閱讀

    一文帶你了解電機(jī)驅(qū)動(dòng)芯片和電機(jī)驅(qū)動(dòng)模塊

    什么是電機(jī)驅(qū)動(dòng)芯片和電機(jī)驅(qū)動(dòng)模塊? 電機(jī)驅(qū)動(dòng)芯片是集成有CMOS 控制電路和DMOS 功率器件的芯片,利用它可以與主處理器、電機(jī)和增量型編碼器構(gòu)成一個(gè)完整的運(yùn)動(dòng)控制系統(tǒng)??梢杂脕?/div>
    的頭像 發(fā)表于 07-18 14:46 ?1.7w次閱讀

    智能功率模塊(IPM)的驅(qū)動(dòng)

    智能功率模塊(IPM)的驅(qū)動(dòng)(人工智能技術(shù)應(yīng)用專業(yè)主要就業(yè)崗位)-智能功率模塊(IPM)的驅(qū)動(dòng)與保護(hù),僅提供參考?。?/div>
    發(fā)表于 09-30 13:18 ?87次下載
    智能功率<b class='flag-5'>模塊</b>(IPM)的<b class='flag-5'>驅(qū)動(dòng)</b>

    如何實(shí)現(xiàn)模塊模塊之間點(diǎn)對點(diǎn)的通信

      ESP8266有三種模式可以選擇,AP/STA/AP+STA,下面我們要實(shí)現(xiàn)的是模塊模塊之間點(diǎn)對點(diǎn)的通信。
    的頭像 發(fā)表于 02-28 10:48 ?3822次閱讀

    如何使用Arduino輕松更改藍(lán)牙模塊名稱

    電子發(fā)燒友網(wǎng)站提供《如何使用Arduino輕松更改藍(lán)牙模塊名稱.zip》資料免費(fèi)下載
    發(fā)表于 12-16 10:33 ?0次下載
    如何使用Arduino輕松<b class='flag-5'>更改</b>藍(lán)牙<b class='flag-5'>模塊</b>名稱

    更改HC 05藍(lán)牙模塊的名稱和密碼

    電子發(fā)燒友網(wǎng)站提供《更改HC 05藍(lán)牙模塊的名稱和密碼.zip》資料免費(fèi)下載
    發(fā)表于 02-02 14:22 ?0次下載
    <b class='flag-5'>更改</b>HC 05藍(lán)牙<b class='flag-5'>模塊</b>的名稱和密碼

    電機(jī)驅(qū)動(dòng)模塊有哪些

    電機(jī)驅(qū)動(dòng)模塊有哪些 電機(jī)的驅(qū)動(dòng)模塊通常有晶體管模塊、晶閘管(可控硅)模塊、IGBT
    發(fā)表于 05-08 14:50 ?3176次閱讀

    驅(qū)動(dòng)模塊的作用

    驅(qū)動(dòng)模塊的作用? 驅(qū)動(dòng)模塊是一種非常常見的軟件模塊,用于連接操作系統(tǒng)和硬件設(shè)備之間的接口。通常,
    的頭像 發(fā)表于 08-29 10:06 ?2977次閱讀

    采用FPGA驅(qū)動(dòng)GPS模塊和電子羅盤模塊的解決方法

    電子發(fā)燒友網(wǎng)站提供《采用FPGA驅(qū)動(dòng)GPS模塊和電子羅盤模塊的解決方法.pdf》資料免費(fèi)下載
    發(fā)表于 10-26 09:02 ?1次下載
    采用FPGA<b class='flag-5'>驅(qū)動(dòng)</b>GPS<b class='flag-5'>模塊</b>和電子羅盤<b class='flag-5'>模塊</b>的解決方法

    博途案例:模塊更新與接口更改的實(shí)現(xiàn)方法

    由于模塊上的接口更改,翻譯時(shí)不一定會(huì)生成錯(cuò)誤消息。 因此,文檔“jyyy_mm_tt SPS_HMI_Info_VASSV6”中描述了包括更改在內(nèi)的受影響模塊。 “接口匹配”視圖比
    的頭像 發(fā)表于 10-26 10:51 ?2513次閱讀
    博途案例:<b class='flag-5'>模塊</b>更新與接口<b class='flag-5'>更改</b>的實(shí)現(xiàn)方法

    單模藍(lán)牙模塊和雙模藍(lán)牙模塊指的是什么意思?它們之間有什么區(qū)別呢

    單模藍(lán)牙模塊和雙模藍(lán)牙模塊指的是什么意思?它們之間有什么區(qū)別呢? 單模藍(lán)牙模塊和雙模藍(lán)牙模塊是指用于無線通信的藍(lán)牙
    的頭像 發(fā)表于 01-15 14:59 ?3878次閱讀