Dela via


Stöd för Win32_PerfRawData-klassen

När du skriver en högpresterande provider som härleder klasser från Win32_PerfRawDatamåste du följa specifika konventioner så att WMI kan ange data till egenskapsvärdena.

Notera

Att skriva en WMI-leverantör med höga prestanda för att skapa prestandaräknare rekommenderas inte för någon version av Windows-operativsystemet. Mer information finns i Att göra en instansprovider till en High-Performance-provideroch Prestandabibliotek och WMI.

 

Följande procedur beskriver hur du understödjer Win32_PerfRawData-klassen med din högpresterande leverantör.

Stöd för Win32_PerfRawData-klassen

  1. Skapa klassen i namnområdet Root\CIMv2.

    Klassen måste härledas från Win32_PerfRawData och ha Hiperf-kvalificeraren inställd på TRUE. Du kan också lägga till prestandadataklasser för WDM (drivrutin) i namnområdet root\wmi. Mer information om hur du skapar en egen klass för WMI finns i Utforma MOF-klasser (Managed Object Format).

  2. Ange providern som "NT5_GenericPerfProvider_V1" i Provider-kvalificeraren.

  3. Ange följande kvalificerare på nivån för klassen:

    • HiPerf
    • nationella inställningar
    • PerfDetail
    • Leverantör

    För mer information, se Klasskvalificerare för prestandaräknarklasser. Definiera inte GenericPerfCtr kvalificerare eftersom det är reserverat för ADAP-processen som överför prestandabiblioteksdata till WMI-klasser.

  4. Fyll i lämpliga tidsstämpel- och frekvensegenskaper som används för att beräkna formler av räknartyp.

    Dessa egenskaper ärvs från Win32_PerfRawData och om du skriver en högpresterande provider måste du fylla i dessa för att klassen ska visas i System Monitor.

  5. Inkludera en nyckelegenskap med namnet Namn i klassen (den här egenskapen krävs inte för singleton-klasser).

    Du får inte använda någon annan nyckelegenskap än Namn i klassen.

  6. Skapa egenskaper som har angetts som antingen DWORD (uint32) eller QWORD (uint64). Dessa egenskaper blir prestandaräknare när de överförs till prestandabiblioteken.

  7. Ange följande egenskapsnivåkvalificerare för alla egenskaper i klassen:

    • DisplayName
    • Mottagartyp
    • DefaultScale
    • Beskrivning
    • PerfDefault
    • PrestandaDetalj

    För mer information, se egenskapskvalificerare för prestandaräknarklasser. Dessutom innehåller winperf.h-huvudfilen värden som du kan ange för PerfDetail- och CounterType-.

    WMI använder DisplayName, Localeoch Description qualifiers för lokalisering. Du måste lägga till ändrade kvalificerare i namnområdet MS_409 (engelska) så att System Monitor kan visa dina klassdata korrekt. Det innebär att du ändrar egenskapsdefinitionen genom att lägga till en Beskrivning kvalificerare med förklarande text och fylla i värdet DisplayName. Du måste också lägga till ändrade kvalificerare i andra nationella namnområden som din klass stöder. Om en användare begär data från ett språk som du inte anger ändrade kvalificerare för, använder WMI som standard de definitioner som anges i MS_409 namnrymd.

  8. Skapa en basegenskap för alla egenskaper som har en räknartyp som förväntar sig ett basvärde.

    Den här egenskapen kommer direkt efter egenskapen och den heter egenskapsnamn**_Base**. Till exempel kräver den genomsnittliga egenskapen AvgDiskBytesPerRead i klassen Win32_PerfRawData_PerfDisk_LogicalDisk en basegenskap med namnet AvgDiskBytesPerRead_Base för att räkna antalet exempel. För att avgöra om räknartypen som du vill använda kräver en basegenskap letar du upp räknartypen efter namn eller decimalvärde i WMI-prestandaräknaretyper.

  9. Kontrollera att leverantören uppfyller prestandakrav.

Att göra en instansleverantör till en High-Performance leverantör