estrutura PHYSICAL_COUNTER_RESOURCE_DESCRIPTOR (ntddk.h)
A estrutura PHYSICAL_COUNTER_RESOURCE_DESCRIPTOR descreve os recursos de contador disponíveis na plataforma.
Sintaxe
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;
Membros
Type
Indica o tipo de recurso de contador descrito pela estrutura . Defina esse parâmetro como uma das seguintes constantes de enumeração PHYSICAL_COUNTER_RESOURCE_DESCRIPTOR_TYPE :
- ResourceTypeSingle
- ResourceTypeRange
- ResourceTypeOverflow
- ResourceTypeEventBuffer
Flags
Nenhum sinalizador está definido no momento. Defina esse membro como zero.
u
Uma união que pode conter um valor CounterIndex, Range, OverflowHandler ou EventBufferConfiguration .
u.CounterIndex
Um índice de contador físico.
u.Range
Um intervalo de índices de contador.
u.Range.Begin
O índice do contador inicial de um bloco de contadores contíguos.
u.Range.End
O índice de contador final de um bloco de contadores contíguos.
u.OverflowHandler
Um ponteiro para a rotina de PPHYSICAL_COUNTER_OVERFLOW_HANDLER fornecida pelo driver que será chamada quando um contador de hardware associado (especificado por outro PHYSICAL_COUNTER_RESOURCE_DESCRIPTOR) estourar.
u.EventBufferConfiguration
Uma configuração para amostragem baseada em buffer de eventos (como o PEBS da Intel). Os campos de configuração são definidos pelo tipo PHYSICAL_COUNTER_EVENT_BUFFER_CONFIGURATION .
u.IdentificationTag
Comentários
A maioria dos processadores tem unidades de monitor de desempenho que contêm vários contadores de hardware para medir vários aspectos do desempenho do sistema. A estrutura PHYSICAL_COUNTER_RESOURCE_DESCRIPTOR descreve um recurso de contador, que pode ser um único contador de hardware, um bloco de contadores contíguos, uma interrupção de estouro de contador ou uma configuração de buffer de eventos. O membro Type dessa estrutura indica qual tipo de recurso de contador é descrito pela estrutura .
Para especificar um conjunto de recursos de contador, um cliente no modo kernel pode fornecer uma matriz de estruturas de PHYSICAL_COUNTER_RESOURCE_DESCRIPTOR . Uma estrutura PHYSICAL_COUNTER_RESOURCE_LIST serve como um cabeçalho para a matriz. O cliente pode alocar e liberar o conjunto de recursos de contador descritos pela matriz como uma única unidade. Para fazer isso, o driver chama HalAllocateHardwareCounters e HalFreeHardwareCounters
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Com suporte no Windows 7 e versões posteriores do Windows. |
Cabeçalho | ntddk.h (inclua Ntddk.h, Ntifs.h) |