この節では、linux-device-driverの概要と、開発者がそれを使いたい理由について概説します。
また、linux-device-driver内の大きなテーマについても言及し、関連するトピックにリンクしてください。 linux-device-driverのドキュメントは新しくなっているので、それらの関連トピックの初期バージョンを作成する必要があります。
hello_world.c
#include <linux/module.h>
#include <linux/kernel.h>
#include <linux/init.h>
#define AUTHOR "Bruce Lee"
#define DESC "Hello World driver"
static int __init init(void)
{
printk(KERN_DEBUG "Hello World\n");
return 0;
}
static void __exit deinit(void)
{
printk(KERN_DEBUG "Goodbye World\n");
}
module_init(init);
module_exit(deinit);
MODULE_LICENSE("GPL");
MODULE_AUTHOR(AUTHOR);
MODULE_DESCRIPTION(DESC);
メークファイル:
KDIR ?= /lib/modules/`uname -r`/build
obj-m += hello_world.o
all:
make -C $(KDIR) M=$(PWD) modules
clean:
make -C $(KDIR) M=$(PWD) clean
コンパイル方法:
$ make
モジュールの挿入方法:
$ sudo insmod hello_world.ko
印刷メッセージの表示方法
$ dmesg
モジュールの一覧表示方法
$ lsmod | grep hello_worls
モジュールを取り外す方法
$ sudo rmmod hello_world
linux-device-driverの設定方法やインストール方法の詳細な説明。