Linux kernel 開發基礎 (一)- Driver 基本概念
Driver 基本概念
開發Linux kernel driver時
經常使用make menuconfig來進行kernel的設定
簡單來說,
這個指令會掃描每個目錄中的Kconfig,
收集其中的訊息與相關設定並將其秀在視窗上供開發者方便設定kernel,
開發者設定完畢後儲存會將這些設定統一存在Linux kernel 根目錄底下
一個隱藏檔: .config
定義的資料有可能長這樣:
config Hello
bool "Hello title"
depends Module
help
Hello detail message
一般而言,
如果沒有設定driver載入的預設值,
系統會出現Y/N/M 三種選項讓你選擇每個driver的載入方式.
在Android的Linux kernel中
通常會把預設值放在kernel/arch/arm/configs目錄裡面
在每個目錄裡面除了Kconfig之外還有一個檔案Makefile,
定義有哪些source code需要complier.
舉例來說
obj-y += hello.o
意思是目錄中有一個hello.c需要complier
綜合以上所說,
簡單來說一個最精簡的Linux kernel driver需要三個檔案
driver本身.c ,Kconfig , makefile
================================
分享與讚美,是我們繼續打拼的原動力.
若文章對您有幫助,望請不吝按讚或分享.
或者對影片有興趣可以訂閱頻道接收通知
================================
YouTube 頻道
FB 粉絲專頁
================================