centos7字符驱动实例
先安装环境
yum install kernel-devel
进入内核代码,创建一个文件夹,比如test
cd /usr/src/kernels/3.10.0-1160.53.1.el7.x86_64/drivers/ mkdir test cd test
下面的代码是网上抄的 直接写入到hello.c
#include <linux/init.h> #include <linux/module.h> MODULE_LICENSE("Dual BSD/GPL"); static int hello_init(void) { printk(KERN_ALERT " Hello world enter\n"); return 0; } static void hello_exit(void) { printk(KERN_ALERT " Hello world exit\n"); } module_init(hello_init); module_exit(hello_exit); MODULE_AUTHOR("zzz"); MODULE_DESCRIPTION("A simple Hello world module"); MODULE_ALIAS("a simplest module");
写一下makefile
echo "obj-m := hello.o" >> Makefile
然后就可以编译了
make -C /usr/src/kernels/3.10.0-1160.53.1.el7.x86_64/ M=$(pwd) modules
接着安装模块
insmod hello.ko
如果不想用了 就卸载模块
rmmod hello.ko