Linuxデバイスドライバ開発 はじめの一歩

何もしないデバイスドライバを書いてみる。
ソースファイル名は skel_drv.c

Makefileはシンプルに1行だけ

obj-m := skel_drv.o

Makeの仕方は

$ make -C /lib/modules/`uname -r`/build M=`pwd` modules

クリーンする方法は

$ make -C /lib/modules/`uname -r`/build M=`pwd` modules clean

デバイス出来上がったデバイスドライバのロードは

$ sudo insmod skel_drv.ko

アンロードは

$ sudo rmmod skel_drv

実行確認

$ dmesg | tail
 :
[472924.981255] skel_drv: loading out-of-tree module taints kernel.
[472924.984092] skel_drv: module verification failed: signature and/or required key missing - tainting kernel
[472925.004224] skel_init
[472936.566017] skel_exit

これだけで、デバイスドライバを作った気になれる。

 

Linuxデバイスドライバ開発

 

添付ファイル: fileskel_drv_part1.tgz 437件 [詳細]

トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2022-05-15 (日) 19:16:07