#include <linux/module.h> /*模块的初始化和退出文件*/
#include <linux/init.h> /*__init 和 __exit 数据段*/
/* 模块安装函数 */
static int __init drive_test_init(void)
{
printk(KERN_INFO "drive_test_init\n");
return 0;
}
/* 模块卸载函数 */
static void __exit drive_test_exit(void)
{
printk(KERN_INFO "drive_test_exit\n");
}
module_init(drive_test_init);
module_exit(drive_test_exit);
MODULE_LICENSE("GPL"); /* 模块的许可证 描述 */
MODULE_AUTHOR("dubilu"); /* 模块的作者 描述 */
MODULE_DESCRIPTION("module drive_test"); /* 模块的介绍信息描述 */
MODULE_ALIAS("module test"); /* 模块的别名信息描述 */
##Makefile
linux内核的源码树目录
KERN_DIR = /home/dubilu/nuc970bsp/linux-3.10.x
obj-m += drive_test.o
all:
make -C $(KERN_DIR) M=`pwd` modules
# arm-linux-gcc app.c -o app
cp:
cp *.ko /root/rootfs/ -rf
.PHONY: clean
clean:
make -C $(KERN_DIR) M=`pwd` modules clean
# rm -rf app
##在Ubuntu 下编译生成.ko文件
##然后开发板开机
###挂载NFS文件服务器后 将ko文件拷贝进NFS客户端文件夹,然后在开发板串口控制平台下进行装载。