WHEA_XPF_CONTEXT_INFO 構造体 (ntddk.h)
WHEA_XPF_CONTEXT_INFO構造体は、x86 または x64 プロセッサのプロセッサ コンテキスト情報を記述します。
構文
typedef struct _WHEA_XPF_CONTEXT_INFO {
USHORT RegisterContextType;
USHORT RegisterDataSize;
ULONG MSRAddress;
ULONGLONG MmRegisterAddress;
} WHEA_XPF_CONTEXT_INFO, *PWHEA_XPF_CONTEXT_INFO;
メンバー
RegisterContextType
構造体によって記述されるプロセッサ コンテキスト情報の種類。 次のいずれかの値になります。
値 | 説明 |
---|---|
XPF_CONTEXT_INFO_UNCLASSIFIEDDATA | バッファーには、未フォーマットの生データが含まれています。 データのバイト数は、RegisterDataSize メンバーで指定されます。 |
XPF_CONTEXT_INFO_MSRREGISTERS | バッファーには、64 ビットコンピューター チェックおよびその他のコンピューター固有のレジスタの配列が含まれています。 配列内のレジスタの数は、RegisterDataSize メンバーで指定されたサイズを 8 で割ることによって決定されます。 |
XPF_CONTEXT_INFO_32BITCONTEXT | 32 ビット実行コンテキスト レジスタ。 バッファーには、WHEA_X86_REGISTER_STATE構造体が含まれています。 |
XPF_CONTEXT_INFO_64BITCONTEXT | 64 ビット実行コンテキスト レジスタ。 バッファーには、WHEA_X64_REGISTER_STATE構造体が含まれています。 |
XPF_CONTEXT_INFO_FXSAVE | バッファーには、FXSAVE 命令によって保存された浮動小数点レジスタが含まれています。 FXSAVE 命令の詳細については、「 Intel 64 および IA-32 アーキテクチャ ソフトウェア開発者マニュアル」を参照してください。 |
XPF_CONTEXT_INFO_32BITDEBUGREGS | 32 ビット デバッグ レジスタ。 バッファーには、32 ビット デバッグ レジスタ DR0-DR7 を含む 8 つの 64 ビット値の配列が含まれています。 各 32 ビット デバッグ レジスタは、0 から 64 ビットに拡張されます。 |
XPF_CONTEXT_INFO_64BITDEBUGREGS | 64 ビット デバッグ レジスタ。 バッファーには、64 ビット デバッグ レジスタ DR0-DR7 を含む 8 つの 64 ビット値の配列が含まれています。 |
XPF_CONTEXT_INFO_MMREGISTERS | バッファーには、64 ビットメモリ マップレジスタの配列が含まれています。 配列内のレジスタの数は、RegisterDataSize メンバーで指定されたサイズを 8 で割ることによって決定されます。 |
RegisterDataSize
RegisterData メンバーに含まれるレジスタ データのサイズ (バイト単位)。
MSRAddress
マシン固有のレジスタの開始アドレス。 このメンバーには、 RegisterContextType メンバーが XPF_CONTEXT_INFO_UNCLASSIFIEDDATA または XPF_CONTEXT_INFO_MSRREGISTERS のいずれかに設定されている場合にのみ、有効なデータが含まれます。 他のすべての種類のプロセッサ コンテキスト情報の場合、このメンバーには 0 を含める必要があります。
MmRegisterAddress
メモリ マップされたレジスタの開始メモリ アドレス。 このメンバーには、 RegisterContextType メンバーが XPF_CONTEXT_INFO_MMREGISTERS に設定されている場合にのみ、有効なデータが含まれます。 他のすべての種類のプロセッサ コンテキスト情報の場合、このメンバーには 0 を含める必要があります。
注釈
WHEA_XPF_PROCESSOR_ERROR_SECTION構造体の VariableInfo メンバーには 0 個以上のWHEA_XPF_CONTEXT_INFO構造体が含まれており、それぞれが、発生したプロセッサ エラーに関連する特定のコンテキスト情報を記述します。 特定のWHEA_XPF_CONTEXT_INFO構造体のサイズが 16 バイトの偶数倍数でない場合、バッファー内の構造体に割り当てられる領域には、割り当てられた領域を 16 バイトの倍数まで丸めるために 0 に設定された追加のバイトが埋め込まれます。
要件
要件 | 値 |
---|---|
Header | ntddk.h (Ntddk.h を含む) |