Compartir a través de


Modelo de información común

Common Information Model (CIM) es un modelo de datos extensible orientado a objetos que contiene información sobre diferentes partes de una empresa. El CIM de es un estándar multiplataforma mantenido por el Grupo de tareas de administración distribuida (DMTF). A través de WMI, un desarrollador puede usar el CIM para crear clases que representen unidades de disco duro, aplicaciones, enrutadores de red o incluso tecnologías definidas por el usuario, como un acondicionador de aire en red. Al ver y realizar cambios en una clase CIM, un administrador puede controlar diferentes aspectos de la empresa. Por ejemplo, un administrador podría consultar una instancia de clase CIM que representa una estación de trabajo de escritorio. Después, el administrador podría ejecutar un script para modificar la instancia de estación de trabajo CIM. WMI traduciría cualquier cambio a la instancia de clase CIM de estación de trabajo en un cambio en la estación de trabajo real.

CIM es un modelo de programación independiente del lenguaje que usa técnicas orientadas a objetos para describir una empresa. Con tres niveles de herencia primaria o secundaria, CIM puede describir aspectos generales y específicos de una empresa. El CIM también usa una técnica denominada "asociación" para vincular diferentes partes del modelo empresarial y usa esquemas para distinguir diferentes entornos de administración.

El CIM está diseñado para presentar una vista coherente de objetos lógicos y físicos en un entorno de administración. El CIM representa objetos administrados mediante una construcción orientada a objetos denominada "clase". Al igual que una clase C++ o COM, una clase CIM puede incluir propiedades para describir datos y métodos para describir el comportamiento. Al igual que un conjunto de clases COM, el CIM no está vinculado a ninguna plataforma. Sin embargo, WMI incluye una extensión para el CIM que describe las plataformas del sistema operativo Microsoft Windows.

El CIM define tres niveles de clases:

  • Núcleo

    Las clases principales representan objetos administrados que se aplican a todas las áreas de administración. Estas clases proporcionan un vocabulario básico para analizar y describir sistemas administrados. Las clases __Parameters y __SystemSecurity son ejemplos de clases principales.

  • Común

    Las clases comunes representan objetos administrados que se aplican a áreas de administración específicas. Sin embargo, las clases comunes son independientes de una implementación o tecnología determinada. Las clases comunes son una extensión de las clases principales. La clase CIM_UnitaryComputerSystem es un ejemplo de una clase común.

  • Extendido

    Las clases extendidas representan objetos administrados que son adiciones específicas de la tecnología a las clases comunes. Normalmente, una clase extendida se aplica a una plataforma específica, como UNIX o el entorno de Microsoft Win32. La clase Win32_ComputerSystem es un ejemplo de una clase extendida.

Un desarrollador puede derivar una clase de otra clase. Una clase derivada representa un caso especial de la clase primaria y hereda todas las propiedades y métodos del elemento primario. Por ejemplo, Win32_ComputerSystem hereda de CIM_UnitaryComputerSystem. Las relaciones de herencia se pueden determinar mediante las propiedades del sistema __Derivation, __Dynastyy __SuperClass. La propiedad del sistema __Derivation es una matriz de cadenas que enumeran toda la cadena de herencia hasta la clase raíz, que también se incluye en __Dynasty. La propiedad del sistema __SuperClass muestra el elemento primario inmediato de la clase actual.

WMI también admite asociaciones. Una asociación es una relación entre dos o más clases WMI diferentes. Por ejemplo, una estación de trabajo en ejecución normalmente tiene un procesador. La clase de asociación WMI Win32_ComputerSystemProcessor asocia la clase de estación de trabajo Win32_ComputerSystem a la clase de procesador Win32_Processor. Sin embargo, una clase de asociación no tiene que vincular dos clases dependientes. De hecho, el propósito principal de una clase de asociación es mostrar las relaciones entre las clases que no dependen necesariamente entre sí. Para obtener más información, vea Declarar una clase de asociación.

Por último, WMI admite el concepto de esquemas. En el contexto de WMI, un esquema es un grupo de clases que describen un entorno de administración determinado. El Kit de desarrollo de software (SDK) de Microsoft Windows usa dos esquemas: el esquema CIM y el esquema Win32. Los nombres de clase de esquema CIM comienzan por CIM_y los nombres de clase de esquema win32 comienzan por Win32_. El esquema CIM contiene las definiciones de las clases principales y comunes, mientras que el esquema Win32 contiene las definiciones de las clases extendidas que son comunes al entorno win32. Sin embargo, un proveedor de terceros puede crear sus propios esquemas para describir los requisitos específicos del proveedor. Dado que los esquemas están diseñados para ser infinitamente extensibles, un desarrollador siempre puede agregar nuevas clases para describir nuevos objetos administrados en un entorno existente. Sin embargo, para simplificar, la mayoría de los proveedores eligen crear esquemas que hereden las propiedades de los esquemas CIM o Win32.