Common Information Model

Das Common Information Model (CIM) ist ein erweiterbares, objektorientiertes Datenmodell, das Informationen zu verschiedenen Teilen eines Unternehmens enthält. Cim ist ein plattformübergreifender Standard, der von der Distributed Management Task Force(DMTF) verwaltet wird. Über WMI kann ein Entwickler mithilfe von CIM Klassen für Festplatten, Anwendungen, Netzwerkrouter und sogar für benutzerdefinierte Technologien wie etwa eine vernetzte Klimaanlage erstellen. Durch Anzeigen und Ändern einer CIM-Klasse kann ein Manager unterschiedliche Aspekte des Unternehmens steuern. So kann er beispielsweise eine CIM-Klasseninstanz für eine Desktop-Arbeitsstation abfragen. Anschließend kann er ein Skript ausführen, um die CIM-Arbeitsstationsinstanz zu ändern. Sämtliche Änderungen an der CIM-Klasseninstanz der Arbeitsstation werden von WMI in Änderungen an der eigentlichen Arbeitsstation umgewandelt.

Cim ist ein sprachunabhängiges Programmiermodell, das objektorientierte Techniken verwendet, um ein Unternehmen zu beschreiben. Mithilfe von drei Ebenen der Vererbung über- und untergeordneter Daten kann cim sowohl allgemeine als auch spezifische Aspekte eines Unternehmens beschreiben. Cim verwendet auch eine Technik namens "Zuordnung", um verschiedene Teile des Unternehmensmodells miteinander zu verknüpfen, und verwendet Schemas, um verschiedene Verwaltungsumgebungen zu unterscheiden.

Cim soll eine konsistente Ansicht logischer und physischer Objekte in einer Verwaltungsumgebung darstellen. Das CIM stellt verwaltete Objekte mithilfe eines objektorientierten Konstrukts dar, das als "Klasse" bezeichnet wird. Wie eine C++- oder COM-Klasse kann eine CIM-Klasse Eigenschaften enthalten, um Daten und Methoden zum Beschreiben des Verhaltens zu beschreiben. Wie eine Gruppe von COM-Klassen ist das CIM nicht an eine Plattform gebunden. WMI enthält jedoch eine Erweiterung des CIM, die die Microsoft Windows Betriebssystemplattformen beschreibt.

Cim definiert drei Klassenebenen:

  • Core

    Kernklassen stellen verwaltete Objekte dar, die für alle Verwaltungsbereiche gelten. Diese Klassen bieten ein grundlegendes Vokabular zum Analysieren und Beschreiben verwalteter Systeme. Die _ _ Klassen Parameters und _ _ SystemSecurity sind Beispiele für Kernklassen.

  • Allgemein

    Allgemeine Klassen stellen verwaltete Objekte dar, die für bestimmte Verwaltungsbereiche gelten. Allgemeine Klassen sind jedoch unabhängig von einer bestimmten Implementierung oder Technologie. Allgemeine Klassen sind eine Erweiterung der Kernklassen. Die CIM _ UnitaryComputerSystem-Klasse ist ein Beispiel für eine gemeinsame Klasse.

  • Erweitert

    Erweiterte Klassen stellen verwaltete Objekte dar, die technologiespezifische Ergänzungen zu den allgemeinen Klassen sind. Eine erweiterte Klasse gilt in der Regel für eine bestimmte Plattform, z. B. UNIX Microsoft Win32-Umgebung. Die Win32 _ ComputerSystem-Klasse ist ein Beispiel für eine erweiterte Klasse.

Ein Entwickler kann eine Klasse von einer anderen Klasse ableiten. Eine abgeleitete Klasse stellt einen Sonderfall der übergeordneten Klasse dar und erbt alle Eigenschaften und Methoden des übergeordneten Elements. Beispielsweise erbt Win32 _ ComputerSystem von CIM _ UnitaryComputerSystem. Vererbungsbeziehungen können mithilfe der Systemeigenschaften _ _ Ableitung, _ _ Eigenschaft und _ _ SuperClass bestimmt werden. Die _ _ Ableitungssystemeigenschaft ist ein Array von Zeichenfolgen, das die gesamte Vererbungskette bis einschließlich der Stammklasse auflistet, die auch in Der - und _ _ -Stammklasse enthalten ist. Die _ _ SuperClass-Systemeigenschaft zeigt das unmittelbar übergeordnete Element der aktuellen Klasse an.

WMI unterstützt auch Zuordnungen. Eine Zuordnung ist eine Beziehung zwischen zwei oder mehr verschiedenen WMI-Klassen. Beispielsweise verfügt eine arbeitsstations ausgeführte Arbeitsstation in der Regel über einen Prozessor. Die WMI-Zuordnungsklasse Win32 _ ComputerSystemProcessor ordnet die Arbeitsstationsklasse Win32 _ ComputerSystem der Prozessorklasse Win32 _ Processor zu. Eine Zuordnungsklasse muss jedoch nicht zwei abhängige Klassen miteinander verknüpfen. Tatsächlich besteht der Hauptzweck einer Zuordnungsklasse im Anzeigen von Beziehungen zwischen Klassen, die nicht unbedingt voneinander abhängig sind. Weitere Informationen finden Sie unter Deklarieren einer Association-Klasse.

Schließlich unterstützt WMI das Konzept von Schemas. Im Kontext von WMI ist ein Schema eine Gruppe von Klassen, die eine bestimmte Verwaltungsumgebung beschreiben. Das Microsoft Windows Software Development Kit (SDK) verwendet zwei Schemas: das CIM-Schema und das Win32-Schema. Die NAMEN der CIM-Schemaklassen beginnen mit CIM, _und die Win32-Schemaklassennamen beginnen mit Win32. _ Das CIM-Schema enthält die Definitionen für die Kern- und allgemeinen Klassen, während das Win32-Schema die Definitionen für die erweiterten Klassen enthält, die für die Win32-Umgebung gelten. Ein Drittanbieter kann jedoch eigene Schemas erstellen, um anbieterspezifische Anforderungen zu beschreiben. Da Schemas unendlich erweiterbar sind, kann ein Entwickler immer neue Klassen hinzufügen, um neue verwaltete Objekte in einer vorhandenen Umgebung zu beschreiben. Der Einfachheit halber entscheiden sich die meisten Anbieter jedoch dafür, Schemas zu erstellen, die Eigenschaften von den CIM- oder Win32-Schemas erben.