Cómo se generan los identificadores de contenedor

A partir de Windows 7, el administrador de Plug and Play (PnP) genera un identificador de contenedor para un nodo de dispositivo (devnode) a través de uno de estos tres mecanismos:

  • Un conductor de autobús proporciona un identificador de contenedor.

    Al asignar un identificador de contenedor a un devnode, el administrador de PnP comprueba primero si el controlador de bus del nodo devnode puede proporcionar un identificador de contenedor. Los controladores de bus facilitan un identificador de contenedor a través de una solicitud IRP_MN_QUERY_ID con el campo Parameters.QueryId.IdType configurado como BusQueryContainerID.

    Si un controlador de bus desea proporcionar un identificador de contenedor, puede obtener un identificador de contenedor genuino incrustado en el hardware físico del dispositivo o utilizar un identificador único específico del bus del hardware del dispositivo para generar un identificador de contenedor. Algunos ejemplos de identificadores únicos específicos del bus son el número de serie de un dispositivo o una dirección de control de acceso a los medios (MAC) del firmware del dispositivo.

    Note

    El proveedor de hardware independiente (IHV) es responsable de la unicidad del identificador de contenedor notificado por el controlador de bus.

    Para obtener más información, consulte Identificadores de contenedor generados a partir de un ID único específico del bus.

  • El administrador de PnP genera un identificador de contenedor a través de la funcionalidad de dispositivo extraíble.

    Si un controlador de bus no puede proporcionar un identificador de contenedor para un devnode que está enumerando, el administrador de PnP utiliza la funcionalidad de dispositivo extraíble para generar un identificador de contenedor para todos los devnodes enumerados para el dispositivo. El controlador de bus informa de esta funcionalidad del dispositivo en respuesta a una solicitud IRP_MN_QUERY_CAPABILITIES.

    Para obtener más información, consulte Identificadores de contenedor generados a partir de la funcionalidad del dispositivo extraíble.

  • El administrador de PnP genera un ID de contenedor mediante la anulación de la funcionalidad del dispositivo extraíble.

    Note

    En Windows 10, los dispositivos DPWS siempre generarán un identificador de contenedor para el dispositivo mediante este método.

    Aunque el mecanismo de invalidación no cambia el valor de la funcionalidad del dispositivo extraíble, obliga al administrador de PnP a usar la configuración de invalidación y no al valor de la funcionalidad del dispositivo extraíble al generar identificadores de contenedor para dispositivos.

    Por ejemplo, si la anulación de la funcionalidad del dispositivo extraíble indica que el dispositivo es extraíble, el administrador de PnP genera un ID de contenedor en todos los nodos de dispositivo enumerados del dispositivo. Esta acción se realiza independientemente de si el dispositivo se identificó como extraíble o no.

    Un IHV puede rellenar el Registro con claves que anulan la capacidad del dispositivo extraíble notificada por el dispositivo. Este mecanismo de anulación es útil para los dispositivos heredados que no admiten la capacidad de dispositivo extraíble o la notifican incorrectamente.

    Para obtener más información, consulte Identificadores de contenedor generados a partir de una anulación de capacidad de dispositivo extraíble.

Además de estos métodos, el sistema utiliza la configuración de objetos ACPI BIOS para especificar las agrupaciones de contenedores de dispositivos. Para obtener más información, consulte Uso de ACPI para la agrupación de contenedores de dispositivos.