Unterstützen der Win32 _ PerfFormattedData-Klasse

Beim Schreiben eines Hochleistungsanbieters, der Klassen von Win32 _ PerfFormattedDataablege, müssen Sie bestimmte Konventionen befolgen, damit WMI die Eigenschaftswerte berechnen kann.

Hinweis

Das Schreiben eines WMI-Hochleistungsanbieters zum Erstellen von Leistungsindikatoren wird für keine Version des Windows Betriebssystems empfohlen. Weitere Informationen finden Sie unter Making an Instance Provider into a High-Performance Providerand Performance Libraries und WMI.

Im folgenden Verfahren wird beschrieben, wie die Win32 _ PerfFormattedData-Klasse unterstützt wird.

So unterstützen Sie die Win32 _ PerfFormattedData-Klasse

  1. Erstellen Sie Ihre Klasse im selben Namespace wie die entsprechende rohe Klasse. Die Klasse muss von Win32 _ PerfFormattedData abgeleitet sein und den HiPerf-Qualifizierer auf TRUE festlegen. Weitere Informationen zum Erstellen einer eigenen Klasse für WMI finden Sie unter Entwerfen von MOF-Klassen (Managed Object Format).

  2. Geben Sie "HiPerfCooker _ v1" im Anbieterqualifizierer an.

  3. Geben Sie zusätzlich zu den Qualifizierern, die für die rohen Klassen verwendet werden, die folgenden Qualifizierer auf Klassenebene an:

    Hinweis

    Legen Sie keinen Wert für GenericPerfCtr, PerfIndex oder HelpIndex fest, da diese vom ADAP-Prozess festgelegt werden. Weitere Informationen finden Sie unter Klassenqualifizierer für Leistungsindikatorklassen.

  4. Schließen Sie eine Schlüsseleigenschaft namens Name in Ihre Klasse ein (diese Eigenschaft ist für Singletonklassen nicht erforderlich).

    Der Wert der Name-Eigenschaft muss mit der entsprechenden rohen Klasse identisch sein. Sie dürfen keine andere Schlüsseleigenschaft als Name für Ihre Klasse verwenden.

  5. Erstellen Sie Eigenschaftendaten, die entweder als DWORD (uint32) oder QWORD (uint64) typisiert sind.

    Die Eigenschaften müssen entweder einer Eigenschaft in der raw-Klasse oder einer Eigenschaft in der Klasse entsprechen, die Sie erstellen.

  6. Geben Sie zusätzlich zu den Qualifizierern PerfIndex und PerfDetail, die für die Rohklasseneigenschaften verwendet werden, die folgenden Eigenschaftsebenenqualifizierer für alle Eigenschaften in der Klasse an:

    Weitere Informationen finden Sie unter Eigenschaftenqualifizierer für Leistungsindikatorklassen. Darüber hinaus enthält die Headerdatei Winperf.h Werte, die Sie für PerfDetail und CounterType angeben können.

  7. Stellen Sie sicher, dass Ihr Anbieter die Leistungsanforderungenerfüllt.

Leistungsanforderungen

Wenn Sie einen Hochleistungsanbieter schreiben, muss seine Leistung die folgenden Anforderungen erfüllen:

  • Das Öffnen der Hochleistungs-DLL-Datei kann nicht mehr als 100 Millisekunden dauern. Insgesamt darf das Öffnen jedes Anbieters und der Leistungsbibliothek für hohe Leistung 5 Sekunden nicht überschreiten.
  • Die Datenaktualisierung kann nicht mehr als 10 Millisekunden pro Sammlung dauern. Bei einem allgemeinen Aktualisierungs- und Erfassungsvorgang können alle Hochleistungsanbieter zusammen nicht mehr als 800 Millisekunden dauern.
  • Die CPU-Gesamtauslastung für alle Anbieter mit hoher Leistung darf 6 bis 7 % CPU-Mehraufwand interaktiv oder 5 % für die Protokollierung nicht überschreiten.

Erstellen eines Instanzanbieters zu einem High-Performance Anbieter