【002.13.01】输入子系统概念介绍
可以将输入子系统看做由三大部分组成,体现了一种分离分层思想。分别为: 核心层 事件处理层 设备驱动层 核心层:这部分主要由input.c来实现,它为事件处理层和设备驱动层提供统一接口,这里我们先列出几个重要的函数。 static int __init input_init(void) int input_register_device(struct input_dev *dev) int input_register_handler(struct input_handler *handler) int input_register_handle(struct input_handle *handle) 这几个函数几乎就实现了整个输入子系统的运作过程。 input.c subsys_initcall(input_init);/*是整个输入子系统的入口函数,它是被编译进内核的,也就是说一开机就会被执行的*/ input.c static int __init input_init(void) { err = class_register(&input_class); /*注册类,放在/sys/class*/ err = register_chrdev(INPUT_MAJOR, "input", &input_fops);/*注册一个设备名为input且主设备号为INPUT_MAJOR