Author:DriverMonkey
Mail:bookworepeng@Hotmail.com
Phone:13410905075
QQ:196568501
测试环境:
Win7 64bit 虚拟机 跑 Ubuntu 10.04.4 LTS
第一步写 Makefile:
obj-m := mmap.o
KERNELBUILD :=/lib/modules/$(shell uname -r)/build
default:
make -C $(KERNELBUILD) M=$(shell pwd) modules
clean:
rm -rf *.o *.ko *.mod.c .*.cmd *.markers *.order *.symvers .tmp_versions
第二步写驱动测试代码:
/**********************************************************************************
Copyright (C), 1988-1999, drvivermonkey. Co., Ltd.
File name:
Author: Driver Monkey
Version:
Mail:bookworepeng@hotmail.com
Date: 2014.04.02
Description:
*********************************************************************************/
#include<linux/module.h>
#include<linux/kernel.h>
#include<linux/init.h>
MODULE_LICENSE("GPL");
static int __init lkp_init(void)
{
printk("Hello World!\n");
return 0;
}
static void __exit lkp_cleanup(void)
{
printk("Bye World!\n");
}
module_init(lkp_init);
module_exit(lkp_cleanup);
MODULE_AUTHOR("heyutao");
MODULE_DESCRIPTION("hello");
第三步Make 生成*.ko 文件并加载
本例中生成的是 mmap.ko
sudo insmod mmap.ko
第四步查看是否加载成功
lsmod 查看是否有mmap 关键字
ule Size Used by
mmap 562 0
如果有表示加载成功没有表示加载失败
第五步查看驱动里面的打印信息
dmesg
...
[18721.719791] Hello World!
[18797.012223] Bye World!