Linux输入子体统三层结构的关系,如下数据结构关系图,本文以触摸屏设备为例进行分析。
三个全局变量:
1.底层所有的驱动设备input_dev都连接到全局链表input_dev_list中
2.事件处理层所有的处理器input_handler都连接到全局链表input_handler_list中
3.触摸屏上层所有事件处理设备存储在全局数组evdev_table中,通过次设备号索引可以找到对应的设备
三个链表:
1.底层的驱动设备通过链表h_list连接相关的input_handle
2.上层的事件处理器也是通过链表h_list连接相关的input_handle
3.上层的事件处理设备通过client_list连接需要处理的事件
对于文件操作接口的流程,可以查看源代码,理解数据结构间的连接层次关系便能明白文件操作接口的调用流程。
阅读(1924) | 评论(4) | 转发(0) |