我正在寻找一种可靠的方法,
通过输入事件处理程序来识别设备的类型(鼠标、键盘、操纵杆)。
有些参数是不可信任的,例如设备名称/供应商 ID 等,因为它们是由设备本身提供的。
AFAIK,输入事件处理程序(Linux 输入子系统的一部分)对应于设备类型。
那么你如何绝对地知道该设备是键盘吗?
通过将其输入事件处理程序与已知的键盘事件处理程序的名称相匹配。
我熟悉该文件/proc/bus/input/devices
,它还提供了几个处理程序,但它感觉不是“正确的查找位置”,因为我没有找到有关该文件的任何官方解释,并且:
... BSD 类型的操作系统通常根本没有 /proc,因此您在此处找到的大部分内容都是不可移植的。
Linux /proc 中这种混乱的预期解决方案是 /sys。理想情况下,所有进入 /proc 树的非进程信息现在都应该转移到 /sys,但历史惯性在 /proc 中保留了很多东西。
从这里。
例如,在我的系统中,键盘的事件处理程序是kbd
。
如何在不访问的情况下找到设备的输入事件处理程序/proc
?