Megosztás a következőn keresztül:


Common Information Model

A Common Information Model (CIM) egy bővíthető, objektumorientált adatmodell, amely egy vállalat különböző részeire vonatkozó információkat tartalmaz. A CIM az Elosztott felügyeleti munkacsoport (DMTF) által fenntartott platformfüggetlen szabvány. A WMI-ben a fejlesztők a CIM használatával olyan osztályokat hozhatnak létre, amelyek merevlemez-meghajtókat, alkalmazásokat, hálózati útválasztókat vagy akár felhasználó által meghatározott technológiákat, például hálózati légkondicionálókat jelölnek. A CIM-osztály megtekintésével és módosításával a felettesek szabályozhatják a vállalat különböző aspektusait. Egy vezető például lekérdezhet egy asztali munkaállomást képviselő CIM-osztálypéldányt. A kezelő ezután futtathat egy szkriptet a CIM-munkaállomáspéldány módosításához. A WMI a munkaállomás CIM-osztálypéldányának módosításait a tényleges munkaállomás módosítására fordítaná le.

A CIM egy nyelvfüggetlen programozási modell, amely objektumorientált technikákkal írja le a vállalatot. A szülő-gyermek öröklés három szintjét használva a CIM egy vállalat általános és konkrét aspektusait is leírhatja. A CIM egy "társítás" nevű technikát is használ a vállalati modell különböző részeinek összekapcsolásához, és sémákkal különbözteti meg a különböző felügyeleti környezeteket.

A CIM úgy lett kialakítva, hogy konzisztens képet nyújtson a logikai és fizikai objektumokról egy felügyeleti környezetben. A CIM egy "osztály" nevű objektumorientált szerkezettel ábrázolja a felügyelt objektumokat. A C++ vagy COM osztályhoz hasonlóan a CIM-osztály is tartalmazhat tulajdonságokat a viselkedés leírására használt adatok és módszerek leírására. A COM-osztályokhoz hasonlóan a CIM sem kapcsolódik semmilyen platformhoz. A WMI azonban tartalmaz egy bővítményt a CIM-hez, amely a Microsoft Windows operációsrendszer-platformokat ismerteti.

A CIM három osztályszintet határoz meg:

  • Mag

    Az alaposztályok olyan felügyelt objektumokat jelölnek, amelyek a felügyelet minden területére vonatkoznak. Ezek az osztályok alapvető szókincset biztosítanak a felügyelt rendszerek elemzéséhez és leírásához. A __Parameters és __SystemSecurity osztályok az alapvető osztályokra mutatnak példákat.

  • Közös

    A gyakori osztályok olyan felügyelt objektumokat jelölnek, amelyek adott felügyeleti területekre vonatkoznak. A közös osztályok azonban függetlenek egy adott megvalósítástól vagy technológiától. A gyakori osztályok az alaposztályok kiterjesztése. A CIM_UnitaryComputerSystem osztály egy gyakori osztály példája.

  • Kiterjedt

    A kiterjesztett osztályok olyan felügyelt objektumokat jelölnek, amelyek a közös osztályok technológiaspecifikus kiegészítései. A kiterjesztett osztály általában egy adott platformra, például UNIX-ra vagy a Microsoft Win32-környezetre vonatkozik. A Win32_ComputerSystem osztály egy kiterjesztett osztály példája.

A fejlesztő egy osztályt egy másik osztályból származtathat. A származtatott osztály a szülőosztály különleges esetét jelöli, és örökli a szülő összes tulajdonságát és metódusát. Például Win32_ComputerSystem örökli CIM_UnitaryComputerSystem. Az öröklési kapcsolatok a rendszertulajdonságok __Derivation, __Dynastyés __SuperClasshasználatával határozhatók meg. A __Derivation rendszertulajdonság sztringek tömbje, amelyek az öröklés teljes láncát sorolják fel a gyökérosztályig, és tartalmazzák azt is, amely szintén szerepel a __Dynasty. A __SuperClass rendszertulajdonság az aktuális osztály közvetlen szülője.

A WMI a társításokat is támogatja. A társítás két vagy több különböző WMI-osztály közötti kapcsolat. Egy futó munkaállomás például általában processzorral rendelkezik. A WMI társításosztály Win32_ComputerSystemProcessor a munkaállomásosztályt Win32_ComputerSystem társítja a Win32_Processorprocesszorosztályhoz. Egy társításosztálynak azonban nem kell két függő osztályt összekapcsolnia. Valójában a társításosztály elsődleges célja olyan osztályok közötti kapcsolatok megjelenítése, amelyek nem feltétlenül függenek egymástól. További információ: Társítási osztály deklarálása.

Végül a WMI támogatja a sémák fogalmát. A WMI kontextusában a séma egy osztálycsoport, amely egy adott felügyeleti környezetet ír le. A Microsoft Windows Software Development Kit (SDK) két sémát használ: a CIM sémát és a Win32 sémát. A CIM-sémaosztályok neve CIM_, a Win32 sémaosztály neve pedig Win32_. A CIM-séma tartalmazza az alapvető és a közös osztályok definícióit, míg a Win32-séma a Win32-környezethez gyakran használt kiterjesztett osztályok definícióit. A külső szállítók azonban létrehozhatnak saját sémákat a szállítóspecifikus követelmények leírásához. Mivel a sémák végtelen bővíthetőségre vannak tervezve, a fejlesztők mindig új osztályokat adhatnak hozzá egy meglévő környezet új felügyelt objektumainak leírásához. Az egyszerűség kedvéért azonban a legtöbb szállító úgy dönt, hogy olyan sémákat hoz létre, amelyek tulajdonságokat örökölnek a CIM- vagy Win32-sémákból.