佚名通过本文主要向大家介绍了pipe,pipe是什么意思,broken pipe,pipe dream,steel pipe等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题:windows ddk USB复合设备驱动,如何同时读两个pipe?
描述:
通过readfile访问驱动的IRP_MJ_READ读取其中1个pipe,可以获取数据。(这里readfile是阻塞了的,IoMarkIrpPending(Irp))
应用层如果用2个线程来readfile,也只有等其中1个读取完毕,才可以读。
我如何修改驱动,才能同时读取2个pipe的数据呢?求大神给个思路。
解决方案1:
描述:
windowsusbddk
通过USBD_CreateConfigurationRequestEx查找到了3个interfaces,1个是键盘,1个是鼠标。配置完成之后,得到2个pipe。通过readfile访问驱动的IRP_MJ_READ读取其中1个pipe,可以获取数据。(这里readfile是阻塞了的,IoMarkIrpPending(Irp))
应用层如果用2个线程来readfile,也只有等其中1个读取完毕,才可以读。
我如何修改驱动,才能同时读取2个pipe的数据呢?求大神给个思路。
解决方案1:
一个Endpoint用IRP_MJ_READ获取数据,另外一个用自定义的Device IO Control进行?