Linux裝置驅動 模組

2021-08-29 16:14:09 字數 962 閱讀 2629

模組檔案

在檔案系統中可以被直接插入到核心的檔案

模組三要素

模組載入函式(必須)

當在檔案系統中使用insmod或者該模組在核心被執行的時候,自動執行該函式

函式方式:

1)預設方式

int init_module(void)

2)使用者自定義

int test_init(void)

module_init(test_init);

模組解除安裝函式(必須)

當模組從檔案系統中移除或者模組在核心失效的時候,自動執行該函式

函式方式:

1)預設方式

void cleanup_module(void)

2)使用者自定義

void test_exit(void)

module_exit(test_exit);

模組許可證宣告(必須)

module_license(「gpl」);

除錯驅動

檢視列印資訊: dmesg 顯示核心中所有的列印資訊

sudo dmesg -c 先顯示列印資訊,後清空緩衝區

sudo dmesg -c 不顯示,直接清空緩衝區

cat /proc/modules 顯示當前系統中的模組資訊

lsmod 顯示當前系統中的模組資訊

modinfo + ***.ko 檢視模組資訊

模組引數

傳參物件:變數(int,bool,ulong,charp),指標,陣列(字元,整型)

module_param(變數名, 變數的型別, 許可權);

module_parm_desc(變數名,「宣告變數的功能」);

module_param_array(陣列名,陣列中元素的型別,&陣列中元素的個數,許可權);

module_param_string(引數名, 陣列名, 組數的大小, 許可權);

驅動 linux裝置驅動 字元裝置驅動開發

preface 前面對linux裝置驅動的相應知識點進行了總結,現在進入實踐階段!linux 裝置驅動入門篇 linux 裝置驅動掃盲篇 fedora下的字元裝置驅動開發 開發乙個基本的字元裝置驅動 在linux核心驅動中,字元裝置是最基本的裝置驅動。字元裝置包括了裝置最基本的操作,如開啟裝置 關閉...

Linux裝置驅動

一.簡介 作業系統是通過各種驅動程式來駕馭硬體裝置,它為使用者遮蔽了各種各樣的裝置,驅動硬體是作業系統最基本的功能,並且提供統一的操作方式。正如我們檢視螢幕上的文件時,不用去管到底使用nvidia晶元,還是ati晶元的顯示卡,只需知道輸入命令後,需要的文字就顯示在螢幕上。硬體驅動程式是作業系統最基本...

linux裝置驅動

1 flash的程式設計原理都是只能將1寫為0,而不能將0寫為1。所以在flash程式設計之前,必須將對應的塊擦除,而擦除的過程就是把所有位都寫為1的過程,塊內的所有位元組變為0xff。2 nand flash與nor flash相比容量大 低 nand flash中每個塊的最大擦寫次數是100萬次...