linux 裝置驅動之模組的初始化和退出

2021-08-20 19:50:48 字數 1031 閱讀 4519

#include /*模組的初始化和退出檔案*/

#include /*__init 和 __exit 資料段*/

/* 模組安裝函式 */

static int __init drive_test_init(void)

/* 模組解除安裝函式 */

static void __exit drive_test_exit(void)

module_init(drive_test_init);

module_exit(drive_test_exit);

module_license("gpl"); /* 模組的許可證 描述 */

module_author("dubilu"); /* 模組的作者 描述 */

module_description("module drive_test"); /* 模組的介紹資訊描述 */

module_alias("module test"); /* 模組的別名資訊描述 */

makefile

linux核心的原始碼樹目錄

kern_dir = /home/dubilu/nuc970bsp/linux-3.10.x

obj-m += drive_test.o

all:

make -c $(kern_dir) m=`pwd` modules

cp: cp *.ko /root/rootfs/ -rf

.phony: clean

clean:

make -c $(kern_dir) m=`pwd` modules clean

在ubuntu 下編譯生成.ko檔案

然後開發板開機

掛載nfs檔案伺服器後 將ko檔案拷貝進nfs客戶端資料夾,然後在開發板串列埠控制平台下進行裝載。

Linux裝置驅動 模組

模組檔案 在檔案系統中可以被直接插入到核心的檔案 模組三要素 模組載入函式 必須 當在檔案系統中使用insmod或者該模組在核心被執行的時候,自動執行該函式 函式方式 1 預設方式 int init module void 2 使用者自定義 int test init void module ini...

Linux裝置驅動之《字元裝置驅動》

linux裝置中最大的特點就是裝置操作猶如檔案操作一般,在應用層看來,硬體裝置只是乙個裝置檔案。應用程式可以像操作檔案一樣對硬體裝置進行操作,如open close read write 等。下面是乙個字元裝置驅動程式的簡單實現test.c 模組分析 1.初始化裝置驅動的結構體 struct fil...

Linux裝置驅動之字元裝置驅動

一 linux裝置的分類 linux系統將裝置分成三種基本型別,每個模組通常實現為其中某一類 字元模組 塊模組或網路模組。這三種型別有 字元裝置 字元裝置是個能夠像位元組流 類似檔案 一樣被訪問的裝置,由字元裝置驅動程式來實現這種特性。字元裝置可以通過檔案系統節點來訪問,比如 dev tty1等。這...