如何检测usb设备是否连接以及它的用途?
本帖最后由 把握今天 于 2011-05-18 18:32 编辑
现在需要在一个终端设备上扩展usb接口的功能
目前至少需要有存储和usb网卡的功能,将来还有可能继续扩展
我想咨询一下,
在应用程序或者系统上如何获知当前usb上是否插着usb设备?
如果插着设备,这个设备是存储功能的U盘还是usb网卡呢?
我能想到的有两种方法,一种是轮训,也就是定时(5s)询问一次,还有就是有没有哪个系统事件能够通知我USB接口设备发生变化
以前只接触过用U盘来和设备交换文件,而且用轮训方式,但感觉USB接口功能多了以后,这样用就不合适了
哪位大侠知道有没有通用的可扩展的方式了监控usb接口,知道它上面的设备插拔以及设备的用途?
谢谢
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
LZ研究下udev及热插拔,udev可以添加规则来处理U盘,当然你的系统要支持udev
{:3_191:}{:2_175:}{:2_179:}
回复 2# whaaat
谢谢你的回复,我今天研究了一下udev
不过我尝试试用hotplug,也就是写了个脚本,在系统初始化时写进/proc/sys/kernel/hotplug
然后运行过程中热插拔u盘,发现我的脚本并没有被调用,请问为什么?
LZ什么版本的?新版本好像hotplug废弃了。
回复 5# whaaat
linux kernel version: 2.6.33
编译的时候加上CONFIG_HOTPLUG了