para.c
#include<linux/module.h>
#include<linux/kernel.h>
#include <linux/init.h>
static int module_int = 100;
module_param(module_int,int,S_IRUSR);
int __init para_init(void)
{
printk("My linux kernel module\n");
printk("module_int = %d\n",module_int);
return 0;
}
void __exit para_exit(void)
{
printk("My linux kernel module was removed.\n");
}
module_init(para_init);
module_exit(para_exit);
MODULE_LICENSE("GPL");
//向内核注册模块所提供的新功能
//module_init(lkp_init);
//注销由模块提供的所有功能
//module_exit(lkp_cleanup);
//MODULE_LICENSE("GPL");
Makefile:
KERNELBUILD := /lib/modules/$(shell uname -r)/build
obj-m += para.o
default: para
para:
make -C $(KERNELBUILD) M=$(shell pwd) modules
clean:
rm -f *.ko *.o hide
rm -f *mod* Module*