KE_PROCESSOR_CHANGE_NOTIFY_CONTEXT 構造体 (wdm.h)

KE_PROCESSOR_CHANGE_NOTIFY_CONTEXT構造体は、新しいプロセッサがハードウェア パーティションに動的に追加されるときに登録されたコールバック関数に渡される通知コンテキストを記述します。

構文

typedef struct _KE_PROCESSOR_CHANGE_NOTIFY_CONTEXT {
  KE_PROCESSOR_CHANGE_NOTIFY_STATE State;
  ULONG                            NtNumber;
  NTSTATUS                         Status;
  PROCESSOR_NUMBER                 ProcNumber;
} KE_PROCESSOR_CHANGE_NOTIFY_CONTEXT, *PKE_PROCESSOR_CHANGE_NOTIFY_CONTEXT;

メンバー

State

プロセッサの追加操作の状態。 使用できる値は次のとおりです。

KeProcessorAddStartNotify

オペレーティング システムによってプロセッサが追加されようとしています。 この状態では、この通知を受け取るデバイス ドライバーは、プロセッサごとのデータ構造を割り当て、新しいプロセッサで実行するためにドライバーを準備するために必要なその他のタスクを実行できます。

KeProcessorAddCompleteNotify

オペレーティング システムによってプロセッサが正常に追加されました。 この状態では、この通知を受け取るデバイス ドライバーは、新しいプロセッサでスレッドのスケジュール設定を開始できます。

KeProcessorAddFailureNotify

オペレーティング システムでプロセッサを追加できませんでした。 デバイス ドライバーがこの通知を受け取った場合は、 KeProcessorAddStartNotify 通知を受信したときに新しいプロセッサに割り当てられたプロセッサごとのデータ構造を解放する必要があります。

NtNumber

新しいプロセッサのプロセッサ インデックス。 プロセッサ インデックスとプロセッサ番号の関係については、「 KeGetProcessorNumberFromIndex」を参照してください。

Status

State メンバーに KeProcessorAddFailureNotify が含まれている場合、このメンバーにはプロセッサの追加操作が失敗した理由を示すエラー状態が含まれます。

ProcNumber

新しいプロセッサのプロセッサ番号。 このメンバーは、グループ番号とグループ相対プロセッサ番号を指定する PROCESSOR_NUMBER 構造体です。

注釈

KE_PROCESSOR_CHANGE_NOTIFY_CONTEXT構造は、Windows Server 2008 以降で使用できます。

デバイス ドライバーは、 KeRegisterProcessorChangeCallback 関数を呼び出すことによって、新しいプロセッサがハードウェア パーティションに動的に追加されたときに通知を受信するように登録します。 この通知の登録の詳細については、「 同期ドライバー通知の登録」を参照してください。

新しいプロセッサがハードウェア パーティションに動的に追加されると、オペレーティング システムは登録済みの各コールバック関数を 2 回呼び出します。 オペレーティング システムは、 KeProcessorAddStartNotify 状態で初めて登録された各コールバック関数を呼び出し、2 回目は KeProcessorAddCompleteNotify 状態または KeProcessorAddFailureNotify 状態で呼び出します。

これらの通知を受け取るデバイス ドライバーのコールバック関数は、 KE_PROCESSOR_CHANGE_NOTIFY_CONTEXT 構造体の内容を変更することはできません。

要件

要件
サポートされている最小のクライアント Windows Server 2008 以降でサポートされています。
Header wdm.h (Wdm.h、Ntddk.h、Ntifs.h を含む)

こちらもご覧ください

KeGetProcessorNumberFromIndex

KeRegisterProcessorChangeCallback

PROCESSOR_NUMBER