Linux Input子系统

Linux Input子系统

  • 1.按键、鼠标、键盘、触摸屏等都属于输入(input)设备, Linux 内核为此专门做了一个叫做 input子系统的框架来处理输入事件。
  • 2.输入设备本质上还是字符设备,只是在此基础上套上了 input 框架.
    • 1.用户只需要负责上报输入事件,比如按键值、坐标等信息.
    • 2.input 核心层负责处理这些事件。
  • 3.input 就是输入的意思,因此 input 子系统就是管理输入的子系统,和 pinctrl 和 gpio 子系统一样,都是 Linux 内核针对某一类设备而创建的框架。
  • 4.input 子系统分为 input 驱动层、 input 核心层、 input 事件处理层,最终给用户空间提供可访问的设备节点
  • 5.左边就是最底层的具体设备,比如按键、 USB 键盘/鼠标等,中间部分属于 Linux内核空间,分为驱动层、核心层和时间层,最右边的就是用户空间,所有的输入设备以文件的形式供用户应用程序使用。
  • 6.驱动分层
    • 1.驱动层:输入设备的具体驱动程序,比如按键驱动程序,向内核层报告输入内容。
    • 2.核心层:承上启下,为驱动层提供输入设备注册和操作接口。通知事件层对输入事件进行处理。
    • 3.事件层:主要和用户空间进行交互。
  • 7.input 核心层会向 Linux 内核注册一个字符设备,大家找到 drivers/input/input.c 这个文件,input.c 就是 input 输入子系统的核心层
  • 8.注册一个 input 类,这样系统启动以后就会在/sys/class 目录下有一个 input 子目录
  • 9.input 子系统的所有设备主设备号都为 13,我们在使用 input 子系统处理输入设备的时候就不需要去注册字符设备了,我们只需要向系统注册一个 input_device 即可。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值