热插拔事件触发自定义行为

1、热插拔事件的产生

      在编写的总线驱动程序的.uevet处理函数中通过环境变量上报给udevd

2、udev信息查看

      udevinfo –a –p /sys/devices/XXX

3、udev规则的添加

      如果想让事件触发自定义的行为,需在/etc/udev/rules.d目录下添加新的规则

      例如添加文件99-zy.rules

ACTION=="add", KERNEL=="lddtest", RUN+="/bin/test.sh"

      其中/bin/test.sh为自定义的可执行脚本

4、测试规则的执行情况

       可以通过命令udevtest /sys/devices/XXX查看规则的执行情况

 

另外,更为事件还会通过socket上报给hal,有hal结合具体应用进行更为复杂的处理。例如U盘以图标形式显示给用户,就是Gnome或KDE等桌面系统与HAL共同作用的效果。

 

更多相关知识:

http://zhumeng8337797.blog.163.com/blog/static/1007689142010836613486/ 简述udev的自定义规则

http://hi.baidu.com/wlcspace/item/842f18f202d9540884d278c3  udev 详解

http://wenku.baidu.com/view/1fe9d880e53a580216fcfef3.html UDEV详细解惑

http://www.mike.org.cn/articles/linux-xiangjie-udev/       Linux┊详解udev

http://wenku.baidu.com/view/a552bc0f844769eae009ed80.html udev规则及其实例

http://wenku.baidu.com/view/eae6fb40336c1eb91a375d92.html 跟我一起写udev规则

http://www.reactivated.net/writing_udev_rules.html  Writing udev rules

http://www.cnblogs.com/armlinux/archive/2011/12/05/2396773.html

http://blog.csdn.net/pifangsione/article/details/24500695  Ubuntu下自动加载U盘  

posted @ 2012-07-09 14:33  sky-zhang  阅读(715)  评论(0编辑  收藏  举报