当前位置: 代码迷 >> 驱动开发 >> 大家都进来谈谈U盘安全删除时的一个现象,该怎么处理
  详细解决方案

大家都进来谈谈U盘安全删除时的一个现象,该怎么处理

热度:77   发布时间:2016-04-28 11:17:46.0
大家都进来谈谈U盘安全删除时的一个现象
现在很多U盘上都带有一个LED灯,在选择安全删除的时候(还没从主机拔出),LED灯可以自动熄灭。在USB协议里面没有这种安全删除处理的数据包呀?他们是怎么做到的呀?

使用BUS HOUND抓包,可以发现,U盘都是配置了3个Endpoint(2个BULK, 1个INTERRUPT,Endpoint0除外)。明明是使用BULK ONLY传输方式,为什么会有一个INTERRUPT Endpoint,干什么用?

不解呀。。。

------解决方案--------------------
因为U盘往往采用微软 自带的驱动,所以可以排除PC和设备之间自定义的协议.

但是简单分析,可能是下面的两个方法:

1. U盘插入之后,PC会一直轮训设备的信息,如果删除之后,驱动被卸载,那么就不会下发这些命令,设备检查到之后,就可以关闭LED.

2. USB上面,驱动被卸载之后,在总线上面,会把设备Suspend,设备在检查到这个状态,也可以关闭LED.很多 采用这个办法.

至于INT的EP,应该是特殊情况吧.

------解决方案--------------------
探讨

1. U盘插入之后,PC会一直轮训设备的信息,如果删除之后,驱动被卸载,那么就不会下发这些命令,设备检查到之后,就可以关闭LED.

  相关解决方案