1.什么是子系统?
内核是操作系统的核心。linux内核把不同功能分成不同的子系统。如进程管理、内存管理、文件系统、网络等等。
2.input子系统原理
硬件驱动层:
其中硬件驱动层负责操作具体的硬件设备,这层的代码是针对具体的驱动程序的,需要驱动程序的作者来编写。
子系统核心层:
子系统核心层是链接其他两个层之间的纽带与桥梁,向下提供驱动层的接口,向上提供事件处理层的接口。
事件处理层:
事件处理层负责与用户程序打交道,将硬件驱动层传来的事件报告给用户程序。
3.input 子系统有如下优点 :
(1) 统一了各种各样的输入设备的处理方法.
(2) 提供了用于分布给用户使用的简单接口
(3) 提炼了输入驱动程序的通用部分 , 简化了驱动程序的开发和移植工作.
4.open、read、write这些系统调用是如何和设备驱动程序关联起来的?
ile_operation就是把系统调用和驱动程序关联起来的关键数据结构,以鼠标设备文件为例,我们对设备文件调用open系统调用,实际上内部的调用是mousedev_open.
static const struct file