第一个hello world驱动模块

来源:互联网 发布:恒智天成软件 编辑:程序博客网 时间:2024/05/24 02:52
命令:vim hello.c

#include
#include
MODULE_LICENSE("GPL");

static int hello_init(void)
{
   printk(KERN_ALERT"HELLO,WORLD\n");
return 0;

}

static void hello_exit(void)
{
   printk(KERN_ALERT"GOODBYE\n");

}

module_init(hello_init);
module_exit(hello_exit);

编写Makefile
ifneq ($(KERNELRELEASE),)   //ifneq 后面有个空格
    obj-m :=hello.o              //为命令行,要tab下,不能与上行对齐
else
    KERNELDIR?=/lib/modules/$(shell uname -r)/build
    PWD :=$(shell pwd)

default:
    $(MAKE) -C $(KERNELDIR)M=$(PWD) modules

endif

命令:make
生成有xx.ko文件,就是可以装入内核的模块文件

如果make错误为:
make


0 0
原创粉丝点击