当我在Linux下的某个GTK应用程序上按下键盘上的按键时,究竟发生了什么?按键如何被接收(来自哪个设备),解释,传递给程序,然后进行处理?
我略过了语言映射,控制台多路复用和其他一些事情...
更新: 所以,/dev/input/*
以及所有的 /dev/*
实际上都是称为块设备或字符设备的特殊文件。重要的是它们在文件系统中没有存储数据,只有一个主设备号和次设备号,在内核中查找驱动程序的表中使用。就是这么简单。如果你 ls -l
/dev/input,你会看到一个主设备号和次设备号,而不是文件大小。主设备号标识设备驱动程序,次设备号是一种实例编号,作为参数传递给驱动程序(在内核内部)。
/dev/input/*
之间的关联。 - OTZ