OpenWrt reset按键处理流程(hotplug)
介绍
本文介绍OpenWrt的reset按键的处理过程。一般的路由器都存在一个reset按键,用来进行重启或者恢复出厂操作。
通常的操作对应为:
单击 - 重启设备
长按 – 恢复出厂设置
当然,这些操作都是可以配置的,下面会详细介绍reset按键的处理过程
涉及文件
reset按键的处理过程使用的是hotplug(热插拔)技术。内核空间检测到reset按键状态的改变后,以netlink的方式发送到上层空间
- gpio_button_hotplug 模块:是内核模块,能够一直读取按键状态,并将状态通知到用户空间。(代码路径:openwrt/package/kernel/gpio-button-hotplug)
- hotplug-call 脚本:用户空间脚本,获取到内核的通知消息,并调用相应的执行脚本(/sbin目录下)
- button 脚本:用来处理具体的按键事件(/etc/hotplug.d/button/00-button)名称