linux输入子系统应用处理进程
input-event-daemon - input event handling daemon //检测特定按键并执行用户指令
input-event-daemon [ [ --monitor | --list | --help | --version ] |
[--config=FILE] [--verbose] [--no-daemon] ]
-m, --monitor
启动监控模式。在这种模式下,不执行特定操作,而是显示每个输入事件和触发它的设备文件。这个选项是专门指定的。
-l, --list列举出所有输入设备,显示名字,特性,和物理路径。这个选项是专门指定的。
-c, --config=FILE指定使用的配置文件,默认为 /etc/input-event-daemon.conf。在 monitoring 模式中无效。
-v, --verbose打印配置文件中处理的每个事件,这个选项通常和 --no-daemon 结合使用。
-D, --no-daemon 以非守护进程的方式执行。
-h, --help
打印帮助信息。
-V, --version
-V, --version
打印版本信息并退出。
配置文件:
例子
A common configuration file may look like this:
#
# /etc/input-event-daemon.conf
#
[Global]
listen = /dev/input/event0
listen = /dev/input/event1
[Keys]
MUTE = amixer -q set Master mute
CTRL+ALT+ESC = shutdown -h now
[Switches]
RADIO:0 = ifconfig wlan0 down
[Idle]
1h 30m = vbetool dpms off
reset = vbetool dpms on
指定所有需要监听的设备,并且这个选项只能使用一次。
[Keys]指定快捷键对应执行的命令,每个快捷方式执行定义一次。(多条命令以“;”分号间隔)
[Switches]本节定义在指定开关设置为定义值时执行的命令。开关名称和值由冒号分隔开。
[Idle] 这个字段指定当所有输入设备在指定时间以内未发出任何事件执行的命令,进入idle状态。从idle状态恢复时执行键值对reset指定的命令。
原理:input-event-daemon是一个应用程序,大概流程如下:
1.实现方式为打开所有需要监听的输入设备;
2.select方式等待事件发生;
3.read方式读取按键信息,根据配置文件匹配按键事件,如果匹配执行指定的操作;