Dela via


Så här genereras container-ID:t

Från och med Windows 7 genererar PnP-hanteraren (Plug and Play) ett container-ID för en enhetsnod (devnode) via någon av tre mekanismer:

  • En busschaufför tillhandahåller ett container-ID.

    När du tilldelar ett container-ID till en devnode kontrollerar PnP-hanteraren först om bussdrivrutinen för devnoden kan ange ett container-ID. Bussdrivrutiner tillhandahåller ett container-ID via en IRP_MN_QUERY_ID begäran med fältet Parameters.QueryId.IdType inställt på BusQueryContainerID.

    Om en busschaufför vill ange ett container-ID kan den antingen hämta ett äkta container-ID som var inbäddat i den fysiska enhetens maskinvara eller använda ett bussspecifikt unikt ID från enhetens maskinvara för att generera ett container-ID. Några exempel på bussspecifika unika ID:n är en enhets serienummer eller en MAC-adress (Media Access Control) i enhetens inbyggda programvara.

    Anmärkning

    Den oberoende maskinvaruleverantören (IHV) ansvarar för att container-ID:t som rapporterats av busschauffören är unikt.

    För mer information, se Container-ID:n som genereras från ett Bus-Specific unikt ID.

  • PnP-hanteraren genererar ett container-ID via funktionen för flyttbara enheter.

    Om en bussdrivrutin inte kan ange ett container-ID för en devnode som den räknar upp använder PnP-hanteraren funktionen för flyttbara enheter för att generera ett container-ID för alla devnodes som räknas upp för enheten. Bussdrivrutinen rapporterar den här enhetsfunktionen som svar på en IRP_MN_QUERY_CAPABILITIES begäran.

    Mer information finns i container-ID:n som genererats från funktionen för flyttbara enheter.

  • PnP-hanteraren genererar ett container-ID genom en åsidosättning av funktionen för flyttbara enheter.

    Anmärkning

    I Windows 10 genererar DPWS-enheter alltid ett container-ID för enheten med den här metoden.

    Även om åsidosättningsmekanismen inte ändrar värdet för funktionen för flyttbara enheter tvingar den PnP-hanteraren att använda åsidosättningsinställningen och inte värdet för funktionen för flyttbara enheter när du genererar container-ID:n för enheter.

    Om en åsidosättning av funktionen för avtagbara enheter anger att enheten är flyttbar, genererar PnP-hanteraren ett container-ID för alla enhetsnoder som identifieras för enheten. Den här åtgärden utförs oavsett om enheten har rapporterat sig själv som flyttbar eller inte.

    En IHV kan fylla registret med nycklar som åsidosätter enhetens rapporterade möjlighet för flyttbara enheter. Den här åsidosättningsmekanismen är användbar för äldre enheter som antingen inte stöder funktionen för flyttbara enheter eller rapporterar den felaktigt.

    För mer information, se konteiner-ID:n som genererats från en kapacitetsåsidosättning för flyttbar enhet.

Utöver dessa metoder använder systemet ACPI BIOS-objektinställningar för att ange gruppering av enhetscontainrar. Mer information finns i Använda ACPI för gruppering av enhetsbehållare.