Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Podczas pisania dostawcy o wysokiej wydajności, który wyprowadza klasy z Win32_PerfFormattedData, należy przestrzegać określonych konwencji, aby WMI mogło obliczyć wartości właściwości.
Notatka
Pisanie wysokowydajnego dostawcy WMI w celu tworzenia liczników wydajności nie jest zalecane w żadnej wersji systemu operacyjnego Windows. Aby uzyskać więcej informacji, zobacz Making an Instance Provider into a High-Performance Providerand Performance Libraries and WMI.
Poniższa procedura opisuje sposób obsługi klasy Win32_PerfFormattedData.
Aby obsługiwać klasę Win32_PerfFormattedData
Utwórz klasę w tej samej przestrzeni nazw co odpowiadająca jej klasa nieprzetworzona. Klasa musi pochodzić z Win32_PerfFormattedData i mieć kwalifikator HiPerf ustawiony na true. Aby uzyskać więcej informacji na temat tworzenia własnej klasy dla usługi WMI, zobacz Projektowanie klas formatu obiektów zarządzanych (MOF).
Określ następujące kwalifikatory na poziomie klasy oprócz kwalifikatorów używanych dla klas pierwotnych:
- AutoCook
- Autocook_RawClass
- gotowane
- kosztowna
- dynamiczne
- HiPerf
- ustawień regionalnych
- PerfDefault
- dostawcy
- Singleton
Notatka
Nie ustawiaj żadnej wartości dla GenericPerfCtr, PerfIndexlub HelpIndex, ponieważ zostaną one ustawione przez proces ADAP. Aby uzyskać więcej informacji, zobacz kwalifikatory klas dla klas liczników wydajności .
Dołącz właściwość o nazwie Name do swojej klasy (ta właściwość nie jest wymagana dla klas pojedynczych).
Wartość właściwości Name musi być taka sama jak odpowiednia klasa nieprzetworzona. W klasie nie można używać żadnej właściwości klucza innej niż Nazwa.
Utwórz dane właściwości wpisane jako DWORD (uint32) lub QWORD (uint64).
Właściwości muszą odpowiadać właściwości w klasie nieprzetworzonej lub właściwości w tworzonej klasie.
Określ następujące kwalifikatory poziomu właściwości dla wszystkich właściwości w klasie, oprócz kwalifikatorów PerfIndex i PerfDetail używanych dla właściwości klasy pierwotnej:
Aby uzyskać więcej informacji, zobacz kwalifikatory właściwości dla klas liczników wydajności. Ponadto plik nagłówka Winperf.h zawiera wartości, które można określić dla PerfDetail i CounterType.
Upewnij się, że dostawca spełnia wymagania dotyczące wydajności .
Wymagania dotyczące wydajności
Gdy piszesz dostawcę wysokiej wydajności, jego wydajność musi spełniać następujące wymagania:
- Otwarcie pliku DLL o wysokiej wydajności może potrwać nie więcej niż 100 milisekund. Ogólnie rzecz biorąc, otwarcie każdego dostawcy usług o wysokiej wydajności oraz biblioteki wydajności nie może przekroczyć 5 sekund.
- Odświeżanie danych nie powinno zajmować więcej niż 10 milisekund na cykl zbierania. Podczas ogólnej operacji odświeżania i zbierania, całkowity czas działania dostawców o wysokiej wydajności nie może przekroczyć 800 milisekund.
- Ogólne obciążenie procesora CPU dla wszystkich dostawców wysokiej wydajności nie może przekraczać 6–7% obciążenia procesora CPU interaktywnie lub 5% na potrzeby rejestrowania.
Tematy pokrewne