PPHYSICAL_COUNTER_EVENT_BUFFER_OVERFLOW_HANDLER função de retorno de chamada (ntddk.h)
O PPHYSICAL_COUNTER_OVERFLOW_HANDLER é implementado pelo driver do cliente para lidar com estouros de buffer de eventos dos recursos de contadores adquiridos por meio da rotina HalAllocateHardwareCounters .
Sintaxe
PPHYSICAL_COUNTER_EVENT_BUFFER_OVERFLOW_HANDLER PphysicalCounterEventBufferOverflowHandler;
void PphysicalCounterEventBufferOverflowHandler(
PVOID EventBuffer,
SIZE_T EntrySize,
SIZE_T NumberOfEntries,
HANDLE OwningHandle
)
{...}
Parâmetros
EventBuffer
Fornece um ponteiro para o buffer de eventos que contém as entradas de evento.
EntrySize
Fornece o tamanho de uma entrada de evento individual.
NumberOfEntries
Fornece o número de entradas disponíveis.
OwningHandle
Fornece o HANDLE correspondente ao conjunto de recursos ao qual o buffer de eventos pertence.
Retornar valor
Nenhum
Comentários
Registre sua implementação dessa função de retorno de chamada chamando HalAllocateHardwareCounters com uma estrutura do tipo PHYSICAL_COUNTER_RESOURCE_LIST. No PHYSICAL_COUNTER_RESOURCE_LIST, forneça uma estrutura do tipo PHYSICAL_COUNTER_RESOURCE_DESCRIPTOR que especifica um PHYSICAL_COUNTER_RESOURCE_DESCRIPTOR_TYPE de ResourceTypeEventBuffer.
Esse retorno de chamada é chamado em IRQL = PROFILE_LEVEL. Isso significa que ele deve sempre ser residente em memória. O retorno de chamada deve retornar o mais rápido possível e não deve tentar fazer nada do seguinte.
Adquirir ou liberar bloqueios de rotação.
Acessar o pool paginado que não está bloqueado na memória
Chame uma rotina paginável.
O retorno de chamada não precisa lidar com a limpeza de nenhum registro de estouro, pois ele será tratado pelo HAL.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 10, versão 1903 |
Cabeçalho | ntddk.h |
IRQL | PROFILE_LEVEL |