这篇文章借鉴了 http://edsionte.com/techblog/archives/2977(主要增加了注释)
HelloWorld 之后可以练习下这个
字符设备驱动程序:
下面的链接是我找到的一些关于关键知识点的文章,当然你可以自己google
file_operations 这个讲的比较概略
file_operations结构体详细分析 这个对file_operations中的所有函数进行了讲解
关于linux内核和模块编程中常见的宏 包括上面的__init宏
Makefile文件:
用户态测试程序:
1.make编译mycdev.c文件,并插入到内核(insmod mycdev.ko);
2.通过cat /proc/devices 确认模块已安装成功;
3.创建设备文件结点:sudo mknod /dev/mycdev c 231 0;具体使用方法通过man mknod命令查看;
4.修改设备文件权限:sudo chmod 777 /dev/mycdev;
5.以上成功完成后,编译本用户态测试程序;运行该程序查看结果;
6.通过dmesg查看日志信息;(dmesg | tail -5)