structure PHYSICAL_COUNTER_RESOURCE_DESCRIPTOR (ntddk.h)
La structure PHYSICAL_COUNTER_RESOURCE_DESCRIPTOR décrit les ressources de compteur disponibles sur la plateforme.
Syntaxe
typedef struct _PHYSICAL_COUNTER_RESOURCE_DESCRIPTOR {
PHYSICAL_COUNTER_RESOURCE_DESCRIPTOR_TYPE Type;
ULONG Flags;
union {
ULONG CounterIndex;
struct {
ULONG Begin;
ULONG End;
} Range;
PPHYSICAL_COUNTER_OVERFLOW_HANDLER OverflowHandler;
PHYSICAL_COUNTER_EVENT_BUFFER_CONFIGURATION EventBufferConfiguration;
ULONG IdentificationTag;
} u;
} PHYSICAL_COUNTER_RESOURCE_DESCRIPTOR, *PPHYSICAL_COUNTER_RESOURCE_DESCRIPTOR;
Membres
Type
Indique le type de ressource de compteur décrit par la structure. Définissez ce paramètre sur l’une des constantes d’énumération PHYSICAL_COUNTER_RESOURCE_DESCRIPTOR_TYPE suivantes :
- ResourceTypeSingle
- ResourceTypeRange
- ResourceTypeOverflow
- ResourceTypeEventBuffer
Flags
Aucun indicateur n’est actuellement défini. Définissez ce membre sur zéro.
u
Union qui peut contenir un CounterIndex, Range, OverflowHandlerou Valeur EventBufferConfiguration.
u.CounterIndex
Index de compteur physique.
u.Range
Plage d’index de compteurs.
u.Range.Begin
Index de compteur de départ d’un bloc de compteurs contigus.
u.Range.End
Index de compteur de fin d’un bloc de compteurs contigus.
u.OverflowHandler
Pointeur vers la routine de PPHYSICAL_COUNTER_OVERFLOW_HANDLER fournie par le pilote qui sera appelée lorsqu’un compteur matériel associé (spécifié par un autre PHYSICAL_COUNTER_RESOURCE_DESCRIPTOR) dépasse.
u.EventBufferConfiguration
Configuration de l’échantillonnage basé sur des mémoires tampons d’événements (par exemple, PEBS d’Intel). Les champs de configuration sont définis par le type PHYSICAL_COUNTER_EVENT_BUFFER_CONFIGURATION.
u.IdentificationTag
Remarques
La plupart des processeurs ont des unités de moniteur de performances qui contiennent un certain nombre de compteurs matériels pour mesurer différents aspects des performances du système. La structure PHYSICAL_COUNTER_RESOURCE_DESCRIPTOR décrit une ressource de compteur, qui peut être un compteur matériel unique, un bloc de compteurs contigus, une interruption de dépassement de compteur ou une configuration de mémoire tampon d’événements. Le membre type de cette structure indique le type de ressource de compteur décrit par la structure.
Pour spécifier un ensemble de ressources de compteur, un client en mode noyau peut fournir un tableau de structures PHYSICAL_COUNTER_RESOURCE_DESCRIPTOR. Une structure PHYSICAL_COUNTER_RESOURCE_LIST sert d’en-tête pour le tableau. Le client peut allouer et libérer l’ensemble de ressources de compteur décrites par le tableau en tant qu’unité unique. Pour ce faire, le pilote appelle HalAllocateHardwareCounters et HalFreeHardwareCounters
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Pris en charge dans Windows 7 et versions ultérieures de Windows. |
d’en-tête | ntddk.h (include Ntddk.h, Ntifs.h) |