原文鏈接 http://blog.chinaunix.net/uid-26853826-id-3177048.html
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連接需要處理的事件
對於文件操作接口的流程,可以查看源代碼,理解數據結構間的連接層次關係便能明白文件操作接口的調用流程。