佐须之男的博客

技术需要沉淀,成长需要痛苦,成功需要坚持,敬仰需要奉献

跟着佐大学Lede/OpenWrt开发入门培训班讲义-18 OpenWrt hotplug 机制分析

备注:

    此文是佐须之男"跟着佐大学OpenWrt开发"入门培训班教学视频演讲稿提纲,虽是内部资料但再三考虑后对外公布,通过公众的监督来鞭策自己。如对完整内容感兴趣,可以参加"跟着佐大学OpenWrt开发"入门培训班:http://forgotfun.org/2018/04/openwrt-training-2018.html

课程试听地址:

    https://pan.baidu.com/s/13nCmoaXTEfKc9F9-bdtHcA


    hotplug机制是linux内核提供的一种消息通知机制,主要用来实现内核态事件向用户态传递。OpenWrt下的ubus也类似,一个是用户态的,而hotplug是内核态的,其功能都是用来消息传递。linux早期的hotplug机制并没有现在这么复杂,在2.4内核的时候只是针对usb、pci子系统,只是简单的hotplug调用进程,后面才使用netlink机制来实现通知机制。当时我主要用hotplug机制来实现usb 3g网卡的模式转换(配合usbmodswitch),现在hotplug有更广泛的使用场景。

    OpenWrt中hotplug机制基本上和传统Linux下的实现类似,只是hotplug事件监听是procd(注:早期OpenWrt采用的是hotplug2),其他系统可能是由hotplug2或其他。OpenWrt常见的按键检测、驱动加载都是基于hotplug机制来实现的。


    参考资料:

    http://linux-hotplug.sourceforge.net/kernel/kernel.html

    https://openwrt.org/docs/techref/hotplug

    https://openwrt.org/docs/guide-user/base-system/hotplug_lede


   

Powered By Z-BlogPHP 1.5 Zero

© 2016 佐须之男版权所有 | 联系方式 forgotfun@qq.com | 业务合作 181-1435-4589 (陆工)