一、Makefile文件
#!/bin/bash
obj-m += 1mini_linux_printf.o
KDIR := /lib/modules/$(shell uname -r)/build
PWD ?= $(shell pwd)
all:
make -C $(KDIR) M=$(PWD) modules
clean:
rm -rf *.o
注意: 1、mini_linux_module.o 的名字要跟 .c文件一样
2、KDIR路径是linux内核的路径 ,$(shell uname -r) 读取出Linux的版本名字
二、1mini_linux_printf.c
#include <linux/module.h>
#include <linux/init.h>
MODULE_LICENSE("Dual BSD/GPL"); //声明GPL协议
MODULE_AUTHOR("TOPEET"); //代码作者
static int hello_init(void)
{
printk(KERN_EMERG "Hello World enter!\n");
return 0;
}
static void hello_exit(void)
{
printk(KERN_EMERG "Hello world exit!\n");
}
module_init(hello_init); //初始化函数
module_exit(hello_exit); //卸载函数