PPHYSICAL_COUNTER_EVENT_BUFFER_OVERFLOW_HANDLER コールバック関数 (ntddk.h)
PPHYSICAL_COUNTER_OVERFLOW_HANDLERは、HalAllocateHardwareCounters ルーチンを介して取得されたカウンター リソースからのイベント バッファー オーバーフローを処理するために、クライアント ドライバーによって実装されます。
構文
PPHYSICAL_COUNTER_EVENT_BUFFER_OVERFLOW_HANDLER PphysicalCounterEventBufferOverflowHandler;
void PphysicalCounterEventBufferOverflowHandler(
PVOID EventBuffer,
SIZE_T EntrySize,
SIZE_T NumberOfEntries,
HANDLE OwningHandle
)
{...}
パラメーター
EventBuffer
イベント エントリを含むイベント バッファーへのポインターを提供します。
EntrySize
個々のイベント エントリのサイズを提供します。
NumberOfEntries
使用可能なエントリの数を提供します。
OwningHandle
イベント バッファーが属するリソース セットに対応する HANDLE を提供します。
戻り値
何一つ
備考
このコールバック関数の実装を登録するには、PHYSICAL_COUNTER_RESOURCE_LIST型の構造体 halAllocateHardwareCounters を呼び出します。 PHYSICAL_COUNTER_RESOURCE_LISTで、ResourceTypeEventBuffer の PHYSICAL_COUNTER_RESOURCE_DESCRIPTOR_TYPE を指定する PHYSICAL_COUNTER_RESOURCE_DESCRIPTOR 型構造体を指定します。
このコールバックは IRQL = PROFILE_LEVEL で呼び出されます。 つまり、常にメモリ常駐である必要があります。 コールバックはできるだけ早く戻る必要があり、次の操作を試みないでください。
スピン ロックを取得または解放します。
メモリ内でロックされていないページ プールにアクセスする
ページング可能なルーチンを呼び出します。
コールバックは HAL によって処理されるため、オーバーフロー レジスタのクリアを処理する必要はありません。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows 10 バージョン 1903 |
ヘッダー | ntddk.h |
IRQL | PROFILE_LEVEL |