linux驅動學習

2021-09-19 11:44:19 字數 697 閱讀 3162

驅動學習筆記

1模組載入函式

模組載入的是觸發,載入完畢後就解除安裝

static int __init mymodule_init(void)

module_init(mymodule_init);

2模組解除安裝函式

模組被關閉時觸發,或者系統被關閉時觸發

static void __exit mymodule_exit(void)

module_exit(mymodule_exit);

3模組宣告

a) module_license(「gpl」); 核心許可證(任意版本gnu通用公共許可證)

b) module_author(「author」); 宣告作者資訊 可不用

c) module_version(「version」); 版本資訊 可不用

d) module_description(「descriptin」); 宣告模組描述 可不用

4常用模組標頭檔案

#include

#include

#include

模組開發常用命令

insmod ***.ko 載入模組

rmmod *** 解除安裝模組

lsmod 檢視已載入模組

modprobe *** 可載入指定的個別模組,或者是載入一組相依賴的模組

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

linux驅動學習

1.在dev目錄下用ls l檢視字元裝置,輸出第一列為c的的標識的裝置,其中有主裝置號,和次裝置號 裝置檔案對應裝置驅動,linux將每個裝置對映成為乙個檔案,如果訪問檔案,那麼對應的訪問就是相應的io驅動程式,檔案和驅動主要是通過主裝置號聯絡起來的,次裝置號就是反應了具體是那個裝置 核心中 dev...

Linux驅動學習

1.make時使用make arch arm cross compile arm linux gnueabihf 命令而不是make命令 2.編譯.c檔案使用arm linux gnueabihf gcc o c生產可執行檔案 3.cat proc devices 只顯示驅動的主裝置號,且是分類顯示...

Linux驅動學習 Linux裝置驅動概述

linux裝置驅動概述 以點亮led為例 包括應用程式 庫 作業系統 核心 驅動程式。而開發人員中 只要關注自己的那一層,相鄰層只關注介面就可以了 應用程式使用庫提供的open函式開啟led的裝置檔案 庫根據open函式傳入的引數執行 swi 指令,這是軟中斷,這條指令會引起 cpu異常,進入核心 ...