体系结构:USB 设备模拟 (UDE)
本节介绍模拟 USB 主控制器和已连接设备行为的 USB 设备仿真 (UDE) 的体系结构。 通过使用 UDE,非 USB 硬件可以使用 Windows 中的 USB 主机端驱动程序与上层通信。
UDE 驱动程序
在上图中,
- USB 集线器驱动程序 (Usbhub3.sys) 是 KMDF 驱动程序。 集线器驱动程序负责管理 USB 集线器及其端口、枚举和创建物理设备对象, (PDO) USB 设备和可能连接到其下游端口的其他集线器。
- USB 主机控制器扩展 (Ucx01000.sys) 是堆栈中上述集线器驱动程序的抽象层,提供一种通用机制,用于将请求排队到基础主机控制器驱动程序。
- UdeCx) (UDE 类扩展通过客户端实现的回调函数调用到 UDE 客户端驱动程序。 类扩展为客户端驱动程序提供例程,用于创建和管理 UDE 对象。
- UDE 客户端驱动程序 管理硬件,与 WDF 和 UDE API 交互。 上边缘使用 USB 构造与 WDF 和 UDE 类扩展通信。 其下边缘使用硬件的接口与硬件通信。
- 自定义硬件:例如,可以模拟 PCI 硬件以用作 USB 设备。
UDE 设备节点
下面是为 UDE 客户端驱动程序加载的设备堆栈:
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈