PHYSICAL_COUNTER_RESOURCE_DESCRIPTOR structure (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 une valeur CounterIndex, Range, OverflowHandler ou EventBufferConfiguration .

u.CounterIndex

Index de compteur physique.

u.Range

Plage d’index de compteur.

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éborde.

u.EventBufferConfiguration

Configuration pour l’échantillonnage basé sur la mémoire tampon 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 d’analyse 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écrit par le tableau sous la forme d’une seule unité. Pour ce faire, le pilote appelle HalAllocateHardwareCounters et HalFreeHardwareCounters

Configuration requise

Condition requise Valeur
Client minimal pris en charge Pris en charge dans Windows 7 et versions ultérieures de Windows.
En-tête ntddk.h (inclure Ntddk.h, Ntifs.h)

Voir aussi

PHYSICAL_COUNTER_RESOURCE_DESCRIPTOR_TYPE

PHYSICAL_COUNTER_RESOURCE_LIST