日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

三、linux内核驱动裁剪

發布時間:2025/4/5 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 三、linux内核驱动裁剪 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

總結:

  • Menuconfig是編輯內核的工具。
  • Kconfig定義Menuconfig菜單選項。
  • .config是最后Menuconfig配置完生成的文件。
  • Makefile根據.config宏定義判斷是否編譯驅動。

一、Menuconfig的操作

1、Linux編譯器通過.config文件確認哪些代碼編譯進內核,哪些被裁減掉,menuconfig是生成.config的一個工具

在Linux發展過程中,配置內核可以使用一下命令:
????????– #make config(基于文本的最為傳統的配置界面,不推薦使用)
????????– #make menuconfig(基于文本菜單的配置界面)
????????– #make xconfig(要求QT被安裝)
????????– #make gconfig(要求GTK+被安裝)

2、在Linux源碼目錄下輸入命令make Menuconfig,可以進入配置界面
– menuconfig實現的代碼在源碼“scripts”目錄下(了解即可)

3、搜索
????????– 界面輸入“/”,輸入查找關鍵詞,輸入“回車”即可搜索


4、使用 “ 空格 ”鍵 選擇具體驅動配置,有 三種狀態
????????– “M”編譯成模塊(需要在編譯文件里面特殊定義,后面介紹)
????????– “空”不編譯狀態
????????– “*”編譯進內核

二、Kconfig文件

1、Kconfig簡介

????????當執行#make menuconfig時會出現內核的配置界面,所有配置工具都是通過讀取"arch/$(ARCH)Kconfig"文件來生成配置界面,這個文件就是所有配置的總入口,它會包含其他目錄的Kconfig

????????Kconfig的作用:Kconfig用來配置內核,它就是各種配置界面的源文件,內核的配置工具讀取各個Kconfig文件,生成配置界面供開發人員配置內核,最后生成配置文件.config

????????linux源碼目錄下的Kconfig也是通過腳本編寫而成,所以學會“仿寫”即可。Kconfig文件在每一級目錄下都有,源碼下的如下圖所示。

2、Linux內核配置裁減

打開:drivers/char/Kconfig,在LEDS_CTL上面仿寫一個HELLO_CTL。

然后查看menuconfig配置和裁減HELLO的驅動,查看.config文件的變化,將HELLO定義為“tristate”,可選為“M”狀態。

三、.config

menuconfig配置完后,會生成.config,在linux內核源碼根目錄。打開如下:

里面實際上就是很多根據剛剛配置生成的宏定義開關。用于開關驅動。這些宏定義開關在對應的驅動目錄下的Makefile文件中,起到了開關作用。如下面LED驅動的Makefile,就是根據這個.config里面的宏定義,來判斷是否將itop4412_leds編譯進內核里。

總結

以上是生活随笔為你收集整理的三、linux内核驱动裁剪的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。