Share via


about_WMI

Descripción breve

Instrumental de administración de Windows (WMI) usa Common Information Model (CIM) para representar sistemas, aplicaciones, redes, dispositivos y otros componentes administrables de la empresa moderna.

Descripción larga

Instrumental de administración de Windows (WMI) es la implementación de Microsoft de Administración empresarial basada en web (WBEM), el estándar del sector.

WMI clásico usa DCOM para comunicarse con dispositivos en red para administrar sistemas remotos. Windows PowerShell 3.0 presenta un modelo de proveedor CIM que usa WinRM para quitar la dependencia de DCOM. Este modelo de proveedor CIM también usa nuevas API de proveedor WMI que permiten a los desarrolladores escribir cmdlets de Windows PowerShell en código nativo (C++).

No confunda proveedores WMI con proveedores de Windows PowerShell. Muchas características de Windows tienen un proveedor WMI asociado que expone sus funcionalidades de administración. Para obtener proveedores WMI, ejecute una consulta WMI que obtenga instancias de la clase WMI de __Provider , como la consulta siguiente.

Get-WmiObject -Class __Provider

TRES COMPONENTES DE WMI

Los tres componentes siguientes de WMI interactúan con Windows PowerShell: espacios de nombres, proveedores y clases.

Los espacios de nombres WMI organizan proveedores de WMI y clases WMI en grupos de componentes relacionados. De este modo, son similares a los espacios de nombres de .NET Framework. Los espacios de nombres no son ubicaciones físicas, pero son más similares a las bases de datos lógicas. Todos los espacios de nombres WMI son instancias de la clase del sistema __Namespace. El espacio de nombres WMI predeterminado es root/cimv2 (desde Microsoft Windows 2000). Para usar Windows PowerShell para obtener espacios de nombres WMI en la sesión actual, use un comando con el formato siguiente.

Get-WmiObject -Class __Namespace

Para obtener espacios de nombres WMI en otros espacios de nombres, use el parámetro Namespace para cambiar la ubicación de la búsqueda. El siguiente comando busca espacios de nombres WMI que residen en el root/cimv2/Applications espacio de nombres.

Get-WmiObject -Class __Namespace -Namespace root/cimv2/applications

Los espacios de nombres WMI son jerárquicos. Por lo tanto, para obtener una lista de todos los espacios de nombres de un sistema determinado, es necesario realizar una consulta recursiva a partir del espacio de nombres raíz.

Los proveedores de WMI exponen información sobre objetos administrables de Windows. Un proveedor recupera datos de un componente y pasa esos datos a través de WMI a una aplicación de administración, como Windows PowerShell. La mayoría de los proveedores de WMI son proveedores dinámicos, lo que significa que obtienen los datos dinámicamente cuando se solicitan a través de la aplicación de administración.

BÚSQUEDA DE CLASES WMI

En una instalación predeterminada de Windows 8, hay más de 1100 clases WMI en root/cimv2. Con estas muchas clases WMI, el desafío se convierte en la identificación de la clase WMI adecuada que se va a usar para realizar una tarea específica. Windows PowerShell 3.0 proporciona dos maneras de buscar clases WMI relacionadas con un tema específico.

Por ejemplo, para buscar clases WMI en el root/cimv2 espacio de nombres WMI relacionado con discos, puede usar una consulta como la que se muestra aquí.

Get-WmiObject -List *disk*

Para buscar clases WMI relacionadas con la memoria, puede usar una consulta como la que se muestra aquí.

Get-WmiObject -List *memory*

Los cmdlets CIM también proporcionan la capacidad de detectar clases WMI. Para ello, use el Get-CimClass cmdlet . El comando que se muestra aquí muestra las clases WMI relacionadas con el vídeo.

Get-CimClass *video*

La expansión de tabulación funciona al cambiar los espacios de nombres WMI y, por tanto, el uso de la expansión de pestañas hace que los espacios de nombres de sub-WMI se puedan detectar fácilmente. En el ejemplo siguiente, el Get-CimClass cmdlet enumera las clases WMI relacionadas con la configuración de energía. Para encontrarlo, escriba el root/cimv2 espacio de nombres y presione la tecla Tab varias veces hasta que aparezca el espacio de nombres de energía. Este es el comando:

Get-CimClass *power* -Namespace root/cimv2/power