sudo gedit hello.c
#include <linux/module.h> #include <linux/kernel.h> #include <linux/init.h> MODULE_LICENSE("GPL"); MODULE_AUTHOR("leemo"); MODULE_DESCRIPTION("Hello World Module"); MODULE_ALIAS("a simplest module"); static int __init hello_init(void) { printk(KERN_EMERG"Hello World! This is leemo's work\n"); return 0; } static void __exit hello_exit(void) { printk("<6>hello exit\n"); return; } module_init(hello_init); module_exit(hello_exit);
sudo gedit Makefile
bj-m := hello.o
DIR := /lib/modules/$(shell uname -r)/build
ll:
make -C $(KDIR) M=$(PWD) modules
lean:
rm *.o *.ko Mo* mo* *.mo*
编译
make
加载模块
sudo insmod hello.ko
使用lsmod查看模块
使用dmesg查看
完成。
卸载模块
rmmod hello.ko.