使用 Microsoft 作業系統 ContainerID 描述元

Microsoft 作業系統(OS)ContainerID 描述符可用於支援透過多條系統匯流排同時連接裝置的裝置。 明確定義的 Microsoft OS 容器ID 描述符確保 USB 匯流排上為該裝置枚舉的所有裝置節點(devnodes)都被歸類在同一裝置容器中。

註如果你決定實作 Microsoft OS ContainerID 描述符,描述符值必須在每台裝置上都是唯一的,以避免容器 ID 衝突。

當裝置支援透過多條匯流排同時連接到該裝置時,Microsoft OS ContainerID 描述符非常有用。 如此一來,裝置支援的每條匯流排都會使用相同的容器 ID。 這讓作業系統能判斷每個匯流排上的功能是否屬於同一裝置容器。

如果你決定在 USB 裝置中使用 Microsoft OS ContainerID,你應該注意以下幾點:

  • 對於未整合於電腦中的裝置(即所有外部裝置),最佳做法是始終提供 Microsoft OS 容器ID 描述符及 USB 裝置硬體中的序號。 這將確保 Windows 隨插即用(PnP)基礎結構能夠正確地將裝置公開的所有裝置功能分組。 從 Windows 7 開始,作業系統的元件依賴於適當的裝置功能群組。 遵循此做法將為 Windows 平台上的裝置提供最佳的使用者體驗。

  • 與電腦整合的 USB 裝置絕不應提供 Microsoft OS 容器ID 描述符。 為確保整合裝置正確與電腦的裝置容器分組,整合裝置應依賴 ACPI BIOS 設定,或依賴埠的 USB 集線器描述符 DeviceRemovable 位元。