Linux驱动程序框架基础总结
1、驱动程序框架基本类型
1、字符设备(char device)
以字节为单位进行读写的设备
2、块设备(block device)
以块为单位(效率最高)进行读写的设备
3、网络设备(net device)
用于网络通信的设备
2、驱动程序基本功能
1、对设备进行初始化和释放
2、将数据从内核传送到硬件
3、从硬件读取数据
4、读取应用程序传送给设备文件的数据
5、回送应用程序请求的数据
6、检测和处理设备出现的错误
3、驱动程序的内核模块机制/开发模式
静态编译、动态加载
一个模块单独进行编译成单独的内核模块,在内核需要的时候,将此模块加载到正在运行的内核中即可(卸载同理)
4、驱动程序基本框架
1、驱动程序与操作系统内核的接口
函数:file_operations
头文件:#include <linux/fs.h>
2、驱动程序与系统引导的接口
对设备进行初始化
3、驱动程序与设备的接口
驱动程序如何与设备进行交互