KBUGCHECK_ADD_PAGES構造体 (wdm.h)
KBUGCHECK_ADD_PAGES 構造体は、クラッシュ ダンプ ファイルに KBUGCHECK_REASON_CALLBACK_ROUTINE コールバック関数によって書き込まれるドライバーが提供するデータの 1 つ以上のページを記述します。
構文
typedef struct _KBUGCHECK_ADD_PAGES {
PVOID Context;
ULONG Flags;
ULONG BugCheckCode;
ULONG_PTR Address;
ULONG_PTR Count;
} KBUGCHECK_ADD_PAGES, *PKBUGCHECK_ADD_PAGES;
メンバーズ
Context
コールバック ルーチンを排他的に使用するためのプライベート コンテキスト データが含まれています。 コールバック ルーチンは、このメンバーを任意の値に設定できます。 通常、コールバック ルーチンを複数回呼び出す必要がある場合、ルーチンは、最初の呼び出し中にドライバーが提供するバッファーを指すこのメンバーを設定します。 後続の呼び出し中に、コールバック ルーチンは、このバッファーの前の内容を読み取り、その内容を更新できます。 コールバック ルーチンの最初の呼び出しの前に、コンテキスト は NULL 。
Flags
追加ページ要求を記述するフラグが含まれています。 コールバック ルーチンは、このメンバーの値を設定する必要があります。 このメンバーを、次のフラグ ビットの 1 つ以上のビットごとの OR に設定します。
KB_ADD_PAGES_FLAG_VIRTUAL_ADDRESS
Address メンバーに仮想アドレスが含まれていることを示します。
KB_ADD_PAGES_FLAG_PHYSICAL_ADDRESS
Address メンバーに物理アドレスが含まれていることを示します。
KB_ADD_PAGES_FLAG_ADDITIONAL_RANGES_EXIST
コールバック ルーチンが、ページを追加できるように、再度呼び出されるように要求することを示します。
コールバック ルーチンは、KB_ADD_PAGES_FLAG_VIRTUAL_ADDRESS フラグまたは KB_ADD_PAGES_FLAG_PHYSICAL_ADDRESS フラグを設定する必要がありますが、両方を設定する必要はありません。 コールバック ルーチンへのエントリでは、Flags は 0 に初期化されます。
BugCheckCode
バグ チェックの理由を指定するバグ チェック コードが含まれています。 コールバック ルーチンは、この情報を使用して、クラッシュ ダンプ ファイルにページを追加するかどうかを決定できます。 バグ チェック コードの完全な一覧については、WDK に含まれている Bugcodes.h ヘッダー ファイルを参照してください。
Address
コールバック ルーチン要求がクラッシュ ダンプ ファイルに追加されるページまたはページの物理アドレスまたは仮想アドレスを指定します。
Count
クラッシュ ダンプ ファイルに追加する連続するページの数を指定します。これは、Address メンバーで指定された仮想アドレスまたは物理アドレスから始まります。 Count> 1 で、Address が仮想アドレスの場合、ページは仮想メモリ空間内で連続しています。 Count> 1 で、Address が物理アドレスの場合、ページは物理メモリ空間内で連続しています。 コールバック ルーチンは、クラッシュ ダンプ ファイルにページを追加する必要がないことを示すために、このメンバーを 0 に設定できます。
備考
KbCallbackAddPages コールバック ルーチンの呼び出しでは、オペレーティング システムは、Reason パラメーターを KbCallbackAddPages に設定し、ReasonSpecificData パラメーターを KBUGCHECK_ADD_PAGES 構造体を指すように設定します。
この構造体の使用方法の詳細については、「バグ チェック コールバック ルーチンの と KBUGCHECK_REASON_CALLBACK_ROUTINE コールバック関数の記述」を参照してください。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows Server 2008 以降のバージョンの Windows でサポートされています。 |
ヘッダー | wdm.h (Wdm.h、Ntddk.h、Ntifs.h を含む) |
関連項目
バグ チェック コールバック ルーチンの を記述する。