Un scurt ghid despre Windows Management Instrumentation (WMI)

Cadrul pentru informații și activități de management pe sistemele de operare bazate pe Windows se numește Windows Management Instrumentation (WMI).

WMI oferă, de asemenea, date de management altor componente ale sistemului de operare și ale produselor, cum ar fi SCOM (System Center Operations Manager) sau Windows Remote Management.

Ce este Windows Management Instrumentation (WMI?)

WMI este o platformă pentru gestionarea și monitorizarea sistemului de operare și a altor aplicații și servicii Microsoft pe computere personale, servere și alte dispozitive de rețea.

WMI oferă o interfață de programare cuprinzătoare, scalabilă și ușor de utilizat, care oferă acces programatic la informații și servicii pe computere gestionate de Microsoft și alte dispozitive de rețea.

Este folosit pentru a descoperi și monitoriza sistemul de operare, serviciile și aplicațiile de pe computer, precum și datele din registru și ale sistemului de fișiere. De asemenea, este folosit pentru a crea și gestiona scripturi și programe care automatizează gestionarea și administrarea computerului.

Folosește limbajul de programare WQL (Windows Query Language) pentru a interoga informații și a efectua operațiuni pe sistemul de operare, computere și dispozitive.

De asemenea, vă oferă acces la PowerShell, unul dintre cele mai puternice și flexibile instrumente de administrare pentru Windows, pe care îl puteți utiliza pentru a crea scripturi de automatizare.

În plus, WMI vă permite să construiți aplicații personalizate care oferă funcționalități suplimentare pentru gestionarea și administrarea sistemelor și aplicațiilor Windows.

Utilizatorii care trebuie să monitorizeze starea mașinilor lor, să facă depanare de bază și să colecteze date de performanță vor găsi WMI la îndemână.

Care este scopul WMI?

WMI este util într-o rețea de întreprindere Windows, deoarece simplifică operarea și gestionarea componentelor rețelei de întreprindere prin livrarea datelor către alte produse pentru îmbunătățire și scalabilitate ulterioară.

Întregul scop al WMI este de a oferi o experiență unificată de cadru de management în toate aspectele unui sistem Windows, cum ar fi:

  • Componentele sistemului de operare
  • Procese și fire
  • Servicii
  • Dispozitive
  • Șoferii
  • Aplicații
  • Conturi de utilizator
  • Setări de securitate

Scopul invenției WMI duce la reducerea costurilor și timpului în operațiuni și dezvoltare legate de sistemele Windows. WMI vă permite, de asemenea, să monitorizați evenimentele sistemului și să colectați date de performanță. Aceste date pot fi folosite pentru a depana probleme sau pentru a urmări tendințele în timp.

WMI este cel mai frecvent utilizat pentru a automatiza sarcinile administrative și pentru a obține acces la date fără a avea de-a face direct cu sistemul de operare. Ca rezultat, WMI este o alternativă fantastică pentru administratorii și dezvoltatorii de software care trebuie să automatizeze procesele care consumă timp.

Totul, de la monitorizarea performanței sistemului până la achiziționarea datelor aplicației, este posibil cu acesta. Le permite dezvoltatorilor să creeze aplicații mai inteligente și mai inteligente, asigurând totodată că administratorii IT își pot îndeplini sarcinile cu un efort minim.

WMI oferă o implementare de referință pentru accesarea informațiilor de sistem și este un instrument cheie pentru gestionarea și monitorizarea sistemelor Windows. Este piatra de temelie pentru Azure Machine Learning și AzureML și este folosit pentru a alimenta o gamă largă de produse terțe.

  Cum să reglați luminozitatea monitorului cu butoane sparte pe Windows 10

Utilizarea WMI

Windows Management Instrumentation (WMI) este livrarea de către Microsoft a Web-Based Enterprise Management (WBEM), o inițiativă a industriei de dezvoltare a tehnologiilor standardizate pentru accesarea informațiilor de guvernanță corporativă.

WMI reprezintă sisteme, aplicații, rețele, dispozitive și alte componente gestionate folosind standardul industrial Common Information Model (CIM). Distributed Management Task Force (DMTF) creează și menține CIM.

Designul WMI este versatil, acceptând o gamă largă de sarcini de administrare și management, precum și oferind o arhitectură flexibilă și extensibilă, care permite producătorilor să scrie noi furnizori WMI pentru a suporta noi dispozitive, aplicații și alte progrese.

Alte utilizări sunt:

  • Management cuprinzător al sistemului de operare Windows și al dispozitivelor și serviciilor de rețea Microsoft.
  • Poate fi folosit pentru a conecta computerele de la distanță pentru a accesa datele WMI
  • Descoperă informații despre sistem, cum ar fi ce programe rulează și ce servicii sunt configurate.
  • Pentru a prelua informații despre specificațiile hardware și pentru a efectua acțiuni, cum ar fi închiderea sau repornirea sistemului.
  • Lansarea aplicațiilor, pornirea, oprirea, configurarea serviciilor și accesarea datelor.
  • Dezvoltatorii de aplicații de management pot folosi acest API pentru a crea scripturi în Visual Basic sau Windows Scripting Host (WSH).

Arhitectura WMI

WMI (Windows Management Instrumentation) este o tehnologie Microsoft prezentată inițial în Windows 2000. Le permite programatorilor să construiască programe de management care funcționează cu orice sistem care acceptă WMI.

Să vedem arhitectura și terminologia WMI.

Fluxul arhitecturii WMI începe de la Obiecte: o componentă, cum ar fi un hard disk, o placă de rețea, un sistem de operare sau un serviciu, este un obiect gestionat (care poate fi gestionat prin WMI). Infrastructura WMI primește date de la un obiect prin intermediul unui furnizor. Furnizează și primește mesaje de la WMI și le predă obiectului.

Un furnizor WMI cuprinde un DLL și un fișier MOF (Managed Object Format) care monitorizează evenimentele și datele de la obiecte. WMI clasifică furnizorii în funcție de funcționalitatea oferită de interfața furnizorului.

Există numeroși furnizori WMI încorporați în Windows, inclusiv un furnizor Active Directory, furnizor WMI de date de configurare de pornire (BCD), furnizor de sistem de fișiere distribuite (DFS), furnizor de jurnal de evenimente, furnizor WMI Hyper-V, furnizor Win32, furnizor de registru, și furnizorul SNMP.

Infrastructura WMI este o componentă a sistemului de operare Microsoft Windows cunoscut sub numele de serviciu WMI (winmgmt). WMI Core și WMI Repository sunt cele două părți ale infrastructurii WMI.

Depozitul WMI este o stocare ierarhică de date organizată prin spații de nume WMI, adesea cunoscută sub numele de Common Information Model (CIM). Serviciul WMI stabilește un număr de spații de nume la pornirea sistemului, inclusiv root default, rootcimv2 și abonamentul root.

În plus, serviciul produce un set implicit de definiții de clasă, care include clasele de sistem Win32 și WMI. Alte spații de nume WMI pot fi create de furnizori WMI suplimentari și fiecare spațiu de nume conține mai multe obiecte WMI.

Serviciul WMI acționează ca un intermediar între furnizori, aplicații de management și depozitul WMI. Doar datele statice despre obiecte sunt stocate în depozit, cum ar fi clasele definite de furnizori. WMI obține cele mai multe date în mod dinamic de la furnizor atunci când un client le solicită.

  14 Manageri de fișiere alternativi pentru a înlocui Windows 10 File Explorer

Un consumator WMI este o aplicație de management sau un script care comunică cu infrastructura WMI. Folosind API-ul COM pentru WMI sau API-ul Scripting pentru WMI, un program de management poate interoga, detaliază date, poate rula metode de furnizor și poate abona la evenimente.

WMI creează o interfață standardizată pentru preluarea de la distanță și locală a datelor de management. Interfața uniformă face abstracție din interfețele de programare a aplicațiilor (API-uri) ale sistemului de operare. Acest lucru permite aplicațiilor și scripturilor să colecteze date de management fără a fi nevoie să știe despre API-ul sistemului de operare.

Cum se rulează o interogare WMI?

O caracteristică a versatilității platformei WMI este capacitatea de a interoga depozitul său pentru a obține detalii despre datele despre clasă, instanță sau schemă. Aceste valori sunt conectate la inventarul de sisteme locale și îndepărtate, sisteme de operare, software și alte activități administrative.

Tipul de interogări

În general, există două tipuri de interogări utilizate pentru a prelua informații din depozitul WMI:

Interogare sincronă: este o interogare care păstrează controlul asupra funcționării aplicației dvs. pe tot parcursul interogării. Este mai ușor decât un apel asincron, deoarece necesită doar un apel de interfață. Pentru căutări mari sau întrebări bazate pe rețea, este posibil, totuși, să vă blocheze aplicația.

Interogare asincronă: atunci când viteza unui sistem sau a unei rețele va fi afectată de interogarea unui grup considerabil de date, o interogare asincronă este un fel de preferat de utilizat.

WQL (limbaj de interogare WMI)

Una dintre metodele populare de a interoga WMI este limbajul de interogare WMI.

SQL (Structured Query Language) este utilizat în mediul bazei de date, iar WQL este utilizat în WMI. Ambele au o structură de sintaxă similară.

Selectați, De la și Unde sunt instrucțiunile WQL fundamentale care sunt utilizate pentru a lansa interogarea.

O interogare tipică WMI începe prin selectarea tuturor proprietăților dintr-o clasă WMI folosind comanda „Select”. Asteriscul (“*”) este folosit pentru a selecta fiecare proprietate dintr-o clasă WMI. Se poate folosi cuvântul cheie „De la” pentru a specifica clasa WMI de interogat după alegerea proprietăților (una sau mai multe proprietăți, sau toate). Puteți verifica cheatsheet-ul SQL pentru sintaxa exactă.

WQL poate fi executat prin WMI Tester (wbemtest.exe), care este instalat implicit cu sistemul de operare Windows. Interogările WMI pot fi executate și prin Windows PowerShell, VBScript și limbajul C.

Tipul de interogări WQL

Interogările WQL sunt utilizate pentru a obține trei tipuri diferite de informații.

Interogări obiect: informații despre resursele sistemului Windows pot fi preluate folosind aceste interogări.

Interogări de evenimente: Aceste interogări sunt utilizate pentru a urmări modificările aduse jurnalelor de evenimente, inițierea proceselor, starea serviciilor, disponibilitatea computerelor sau cantitatea de spațiu liber pe disc, printre alte entități sau apariții.

Interogări de schemă: Aceste interogări sunt utilizate pentru a obține detalii despre structura schemei WMI.

Rularea unei interogări

Să vedem cum să rulăm o interogare de obiect.

Următoarea metodă arată cum să verificați procesele WIN_32 pe un sistem local.

Instrumentul WMI Tester este executat prin linia de comandă prin introducerea wbemtest.exe.

  Cum să obțineți fotografiile zilnice ale Bing ca fundal pe Windows 10

Va apărea următoarea fereastră.

Pentru a vă conecta la spațiul de nume WMI care conține clasa pe care doriți să o interogați (RootCimv2 în majoritatea cazurilor): faceți clic pe fila de conectare.

Pentru a rula interogarea, faceți clic pe fila „Interogare”, după cum se arată mai jos:

Apoi introduceți interogarea pentru care doriți să preluați informațiile. De exemplu, să recuperăm toate procesele care rulează pe sistemul local rulând:

select * From Win32_process

După ce faceți clic pe fila Aplicare, veți obține rezultatele de mai jos

Execuția bazată pe GUI de mai sus poate fi efectuată și la promptul de comandă prin PowerShell:

În platforma PowerShell, pentru a obține lista tuturor proceselor win_32, se folosește codul de mai jos:

Get-WmiObject -Class Win32_Process

Pentru a obține toți parametrii de interogare PowerShell, vizitați Management Microsoft PowerShell pagină.

Pentru a rula această interogare în limbaj VBScript și C, aplicația Pagina de documentație Microsoft ar oferi perspective complete.

O altă metodă de a interoga depozitul WMI este prin comanda WMIC:

  • Rulați CMD dintr-un prompt de comandă
  • Tastați WMIC și introduceți pentru a porni programul
  • Apoi promptul de comandă se va schimba în wmic:rootcli>

Administratorii pot rula interogări WMI din acest prompt.

De exemplu, pentru a încărca informațiile CPU ale unui sistem local, comanda va fi:

wmic:rootcli> WMIC CPU

Rezultatele/informațiile vor fi afișate în promptul de comandă.

AddressWidth  Architecture  AssetTag                Availability  Caption                                 Characteristics  ConfigManagerErrorCode  ConfigManagerUserConfig  CpuStatus  CreationClassName  CurrentClockSpeed  CurrentVoltage  DataWidth  Description                             DeviceID  ErrorCleared  ErrorDescription  ExtClock  Family  InstallDate  L2CacheSize  L2CacheSpeed  L3CacheSize  L3CacheSpeed  LastErrorCode  Level  LoadPercentage  Manufacturer  MaxClockSpeed  Name                                      NumberOfCores  NumberOfEnabledCore  NumberOfLogicalProcessors  OtherFamilyDescription  PartNumber              PNPDeviceID  PowerManagementCapabilities  PowerManagementSupported  ProcessorId       ProcessorType  Revision  Role  SecondLevelAddressTranslationExtensions  SerialNumber            SocketDesignation  Status  StatusInfo  Stepping  SystemCreationClassName  SystemName  ThreadCount  UniqueId  UpgradeMethod  Version  VirtualizationFirmwareEnabled  VMMonitorModeExtensions  VoltageCaps
64            9             To Be Filled By O.E.M.  3             Intel64 Family 6 Model 142 Stepping 10  252                                                               1          Win32_Processor    1801               7               64         Intel64 Family 6 Model 142 Stepping 10  CPU0                                      100       205                  1024                       6144         0                            6      31              GenuineIntel  1801           Intel(R) Core(TM) i5-8250U CPU @ 1.60GHz  4              4                    8                                                  To Be Filled By O.E.M.                                            FALSE                     BFEBFBFF000806EA  3                        CPU   TRUE                                     To Be Filled By O.E.M.  U3E1               OK      3                     Win32_ComputerSystem     RENEE-HP     8                      51                      FALSE                          TRUE

Pentru mai multe informații despre Alias ​​și verbe WMIC, vizitați Microsoft wmic.

Întrebări frecvente despre WMI

Care sunt porturile folosite în WMI?

Porturile utilizate sunt 49152 și 65535. Modelul de obiecte componente distribuite (DCOM), pe care se bazează WMI, utilizează implicit un port TCP ales aleatoriu pentru conexiunile între intervalul 49152 și 65535.

Este WMI depreciat?

WMI este încă acceptat. Începând cu Windows 10, versiunea 21H1 și versiunea semestrială a canalului 21H1 a Windows Server, programul de linie de comandă WMI (WMIC) nu mai este acceptat.

Ce sunt instrumentele de monitorizare WMI?

Există multe instrumente disponibile pentru a monitoriza WMI. Cu toate acestea, o mână este deosebit de populare:
Monitor WMI SolarWinds cu monitor de server și aplicație
Senzor de service Paessler WMI cu PRTG
Nagios XI
Sapien WMI Explorer
Instrumentele gratuite sunt WMI Explorer, Adrem Free WMI Tools

Cum să depanați problemele WMI

Este posibil să vedeți erori, de la cursuri lipsă la încălcări de acces în timp ce încercați să accesați datele locale sau la distanță WMI într-o aplicație sau script. Verifică Ghid de depanare Microsoft WMI pentru a găsi soluții la astfel de erori.

Concluzie

În general, Windows Management Instrumentation este un instrument puternic care poate fi utilizat pentru a gestiona o gamă largă de diferite caracteristici legate de sistemul Windows. WMI poate fi un instrument foarte util pentru oricine are de-a face cu sisteme Windows, în ciuda faptului că poate părea inițial intimidant.