国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

Linux輸入子系統

2019-11-08 01:42:22
字體:
來源:轉載
供稿:網友

前面章節講解了按鍵設備驅動,實際上,在linux系統中,為了實現這類驅動程序,一種更值得推薦的方法是利用input子系統。Linux系統提供了input子系統,按鍵、觸摸屏、鼠標等輸入型設備都可以用input接口函數來實現設備驅動。

體系結構:輸入子系統由驅動層,輸入子系統核心層(InputCore)和事件處理層(EventHandler)三部分組成。一個輸入事件,如鼠標移動,鍵盤按鍵按下,通過Driver->InputCore-Eventhandler->userspace的順序到達用戶空間的應用程序。

驅動層:將底層的硬件輸入轉化為統一事件形式,向輸入核心(InputCore)匯報。

輸入核心層:為驅動層提供輸入設備注冊與操作接口,如:input_register_device;通知事件處理層對事件進行處理;在/PROC下產生相應的設備信息。

事件處理層:主要作用是和用戶空間進行交互,我們知道Linux在用戶空間將所有設備當成文件來處理,在一般的驅動程序中都有提供fops接口,以及在/dev下生成相應的設備文件nod,而在輸入子系統中,這些工作都是由事件處理層來完成的。

設備描述:在Linux內核中,input設備用input_dev結構體描述,使用input子系統實現輸入設備驅動的時候,驅動的核心工作是向系統報告按鍵、觸摸屏、鍵盤、鼠標等輸入事件(event,通過input_event結構體來描述),不需要再關心文件操作接口,因為input子系統已經完成了文件操作接口,驅動報告的事件經過InputCore和Eventhandler最終到達用戶空間。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 高邮市| 庆云县| 潼南县| 永仁县| 隆昌县| 琼海市| 彩票| 瑞丽市| 博乐市| 灌南县| 额敏县| 武汉市| 普宁市| 育儿| 延庆县| 朝阳市| 龙海市| 武穴市| 河南省| 长春市| 堆龙德庆县| 道孚县| 金阳县| 齐齐哈尔市| 井冈山市| 彭山县| 昂仁县| 舒城县| 凤冈县| 长武县| 南投县| 商城县| 油尖旺区| 余江县| 海原县| 漾濞| 车险| 阳春市| 云和县| 深州市| 绵竹市|