一,linux内核字符设备驱动开发相关内容:
1,对驱动的理解:对于一般驱动程序来说,只需要配置控制器的寄存器就可以;但是在linux操作系统中,软件要让硬件办事,就要满足硬件的规矩,也就是按驱动框架来开发硬件驱动程序;驱动程序就要受到linux的约束,这个约束就被称为linux驱动框架。linux的驱动框架有很多:字符设备驱动框架、块设备驱动框架、网络设备驱动框架、spi总线驱动框架、usb总线驱动框架、platform总线驱动框架。
2,linux应用程序与驱动程序的关系
应用程序open->C库open->软中断->内核的sys_open->驱动open接口
应用程序close->C库close->软中断->内核的sys_close->驱动release接口
应用程序read->C库read->软中断->内核的sys_read->驱动read接口
应用程序write->C库write->软中断->内核的sys_write->驱动write
特点:同样字符设备在linux系统下,以字符设备文件形式供用户访问使用,用户访问字符设备文件,本质就是访问对应的字符设备硬件