De Win32_PerfFormattedData-klasse ondersteunen
Bij het schrijven van een provider met hoge prestaties die klassen afleiden van Win32_PerfFormattedData, moet u specifieke conventies volgen, zodat WMI de eigenschapswaarden kan berekenen.
Notitie
Het wordt niet aanbevolen om een WMI high-performance provider te schrijven om prestatiemeters te maken op enig versie van het Windows-besturingssysteem. Voor meer informatie, zie Een exemplaarprovider maken in een High-Performance Provideren Prestatiebibliotheken en WMI.
In de volgende procedure wordt beschreven hoe u de Win32_PerfFormattedData-klasse kunt ondersteunen.
De Win32_PerfFormattedData-klasse ondersteunen
Maak uw klasse in dezelfde naamruimte als de bijbehorende onbewerkte klasse. De klasse moet worden afgeleid van Win32_PerfFormattedData en moet de HiPerf- kwalificatie zijn ingesteld op TRUE-. Zie Ontwerpen van Managed Object Format (MOF)-klassenvoor meer informatie over het creƫren van uw eigen klasse voor WMI.
Geef 'HiPerfCooker_v1' op in de Provider kwalificatie.
Geef de volgende kwalificatieklassen op naast de kwalificaties die worden gebruikt voor de onbewerkte klassen:
- AutoCook
- Autocook_RawClass
- gekookte
- kostbare
- dynamische
- HiPerf
- locale
- PerfDefault
- Provider
- Singleton
Notitie
Stel geen waarde in voor GenericPerfCtr, PerfIndexof HelpIndex omdat deze worden ingesteld door het ADAP-proces. Zie Klassekwalificaties voor prestatiemeteritemsvoor meer informatie.
Neem een sleuteleigenschap op met de naam Naam in uw klasse (deze eigenschap is niet vereist voor singleton-klassen).
De waarde van de eigenschap Name moet gelijk zijn aan de bijbehorende onbewerkte klasse. U mag geen andere sleuteleigenschap dan Naam in uw klas gebruiken.
Eigenschappengegevens maken die zijn getypt als DWORD- (uint32) of QWORD- (uint64-).
De eigenschappen moeten overeenkomen met een eigenschap in de onbewerkte klasse of een eigenschap in de klasse die u maakt.
Geef, in aanvulling op de PerfIndex en PerfDetail kwalificaties die worden gebruikt voor de onbewerkte klasse-eigenschappen, de volgende eigenschapsniveaukwalificaties op voor alle eigenschappen in uw klasse:
Voor meer informatie, zie eigenschapskwalificaties voor prestatiemeterklassen. Daarnaast bevat het headerbestand Winperf.h waarden die u kunt opgeven voor PerfDetail- en CounterType-.
Zorg ervoor dat uw provider voldoet aan de prestatievereisten.
Prestatievereisten
Wanneer u een provider met hoge prestaties schrijft, moeten de prestaties ervan voldoen aan de volgende vereisten:
- Het openen van het DLL-bestand met hoge prestaties kan maximaal 100 milliseconden duren. Over het algemeen kan het openen van elke provider met hoge prestaties en de prestatiebibliotheek niet langer zijn dan 5 seconden.
- Het vernieuwen van gegevens kan maximaal 10 milliseconden per collect duren. Bij een algehele vernieuwings- en verzamelbewerking kunnen alle providers met hoge prestaties niet meer dan 800 milliseconden in beslag nemen.
- De totale CPU-belasting voor alle providers met hoge prestaties mag niet groter zijn dan 6-7% CPU-overhead interactief of 5% voor logboekregistratie.
Verwante onderwerpen