A WMI felépítése

A WMI a CIM (Common Information Model) segítségével jeleníti meg az operációs rendszer felügyelt objektumait. Felügyelt objektum lehet bármelyik szoftver, hardvereszköz, logikai vagy fizikai komponens, amelynek állapota a rendszergazdát érdekelheti.

A WMI három elkülöníthető rétegből áll, a következőkben ezekről lesz szó.

C/C++

alkalmazás

PowerShell

 szkript

Windows Management Service

WinMgmt.exe

COM

CIM Repository

MOF

Win32 API

WDM

SNMP

Registry

Exchange

152 . ábra A WMI rétegei

Consumers (fogyasztók) – Fogyasztóknak nevezzük azokat az alkalmazásokat, amelyek felhasználják a WMI által biztosított adatokat. Fogyasztók lehetnek például szkriptek, Active X vezérlők, .NET alapú programok, vagy vállalati rendszerfelügyeleti eszközök (MOM, SMS, stb.). Valamennyi fogyasztó a Windows Management Service (WinMgmt.exe) által megvalósított COM csatolófelületen keresztül fér hozzá az adatokhoz. Az alkalmazásoknak természetesen nem kell tudniuk, hogy az egyes rendszerkomponensekre vonatkozó adatok valójában honnan és milyen módon származnak; nekik csak a COM csatolófelület által nyújtott lehetőségeket kell felhasználniuk.

CIM – A CIM rétegben találhatók a WMI központi komponensei. A CIM Repository tartalmazza azokat az osztálydefiníciókat, amelyekre a rendszer felügyelt objektumainak megjelenítéséhez szükség van, a Windows Management Service pedig a CIM Repository alapján továbbítja a providerektől kapott adatokat a fogyasztó alkalmazások felé. A MOF (Management Object Format) fájlok a CIM Repository bővítését teszik lehetővé. Ilyen fájlokat a WMI részeként kapott MOF compiler (mofcomp.exe) segítségével készíthetünk. Maga a CIM Repository is több ilyen módon lefordított .mof fájlból tevődik össze.

Providers (szolgáltatók) – a szolgáltatók feladata a felügyelt objektumokkal való közvetlen kommunikáció, azok saját API-jának felhasználásával. A különféle rendszerkomponens-csoportok adatainak lekérdezését önálló szolgáltatók végzik. A WMI csomag maga is számos szolgáltatót tartalmaz (a későbbi Windows verziók egyre többet), de természetesen sok alkalmazás hozza a saját szolgáltatóját, amelynek segítségével az alkalmazás adatai elérhetővé válnak WMI-n keresztül

Az adatok továbbítása a következő módon történik: az alkalmazás a COM felület használatával bármely felügyelt objektum tetszőleges adatára rákérdezhet. A WinMgmt.exe a CIM Repository adatainak felhasználásával meghatározza, hogy az adott információt melyik providertől, és milyen módon kell elkérnie. Ezután megszólítja a providert, az pedig lekérdezi az objektum megfelelő adatát. Ezt azután a WinMgmt.exe továbbítja a fogyasztó alkalmazás felé.

Vagyis mondhatjuk azt, hogy a CIM Repository tulajdonképpen egy egységes nyilvántartás, amelynek segítségével a különböző providerek kezelése azonos módon történhet. Minden adatot, amelyet a WMI-n keresztül el szeretnénk érni, tartalmaznia kell a CIM Repository objektummodelljének, és regisztrálnunk kell a használni kívánt providereket is.



Word To HTML Converter