本節說明 USB 硬體的一組可能的 WDM 驅動程式,以說明 WDM 驅動程式層。
下圖顯示 USB 操縱桿的範例 PnP 硬體設定。
在此圖中,USB 操縱桿插入 USB 集線器上的連接埠。 此範例中的 USB 中樞位於 USB 主機控制器板上,並插入 USB 主機控制器板上的單一埠。 USB 主機控制器會插入 PCI 總線。 從 PnP 觀點來看,USB 集線器、USB 主機控制器和 PCI 匯流排均屬於匯流排設備,因為它們各自提供連接埠。 操縱桿不是總線設備。
下圖顯示上圖中可能針對 USB 遊戲桿硬體載入的驅動程式範例集。
從上圖底部開始,範例堆疊中的驅動程式包括:
用於驅動 PCI 匯流排的 PCI 驅動程式。 這是 PnP 匯流排驅動程式。 PCI 匯流排驅動程式是由 Microsoft 隨系統提供。
USB 主機控制器的 bus 驅動程式是以類別/迷你類別驅動程式對的形式實作的。 USB 主機控制器類別和迷你類別驅動程式是由 Microsoft 隨系統提供。
驅動 USB 中樞的 USB 中樞匯流排驅動程式。 USB 中樞驅動程式由 Microsoft 隨系統提供。
操縱桿設備有三個驅動程式,其中之一是一對類別/小類別驅動程式。
功能驅動程式作為搖桿裝置的主要驅動程式,是 HID 類別驅動程式和 USB 迷你類別驅動程式組合。 (HID 代表「人機介面裝置」。HID USB 迷你類別驅動程式支援 HID 裝置的 USB 特定語意,依賴 HID 類別驅動程式 DLL 來提供一般 HID 支援。
函式驅動程式可以特定於特定裝置,或者,如同 HID 一樣,函式驅動程式可以為一組裝置提供服務。 在此範例中,HID 類別驅動程式/HID USB 迷你類別驅動程式配對會服務 USB 匯流排上系統中任何符合 HID 規範的裝置。 HID 類別驅動程式/HID 1394 迷你類別驅動程式配對會為 1394 匯流排上的任何符合 HID 規範的裝置提供服務。
函式驅動程式可以由裝置廠商或 Microsoft 撰寫。 在此範例中,函式驅動程式 (HID 類別/HID USB 迷你類別驅動程式配對) 是由 Microsoft 撰寫。
在此範例中,遊戲桿裝置有兩個篩選驅動程式:新增巨集按鈕功能的上層類別篩選,以及可讓遊戲桿模擬滑鼠裝置的較低層級裝置篩選。
上層篩選器是由需要篩選搖桿 I/O 的人員撰寫,而下層篩選器驅動程式是由搖桿廠商撰寫。
核心模式和使用者模式 HID 用戶端及應用程式並非驅動程式,但為了完整性而示出。