WHEA_PROCESSOR_GENERIC_ERROR_SECTION結構 (ntddk.h)

WHEA_PROCESSOR_GENERIC_ERROR_SECTION 結構描述不是特定處理器架構專屬的處理器錯誤數據。

語法

typedef struct _WHEA_PROCESSOR_GENERIC_ERROR_SECTION {
  WHEA_PROCESSOR_GENERIC_ERROR_SECTION_VALIDBITS ValidBits;
  UCHAR                                          ProcessorType;
  UCHAR                                          InstructionSet;
  UCHAR                                          ErrorType;
  UCHAR                                          Operation;
  UCHAR                                          Flags;
  UCHAR                                          Level;
  USHORT                                         Reserved;
  ULONGLONG                                      CPUVersion;
  UCHAR                                          CPUBrandString[128];
  ULONGLONG                                      ProcessorId;
  ULONGLONG                                      TargetAddress;
  ULONGLONG                                      RequesterId;
  ULONGLONG                                      ResponderId;
  ULONGLONG                                      InstructionPointer;
} WHEA_PROCESSOR_GENERIC_ERROR_SECTION, *PWHEA_PROCESSOR_GENERIC_ERROR_SECTION;

成員

ValidBits

WHEA_PROCESSOR_GENERIC_ERROR_SECTION_VALIDBITS 聯集,指定這個結構的成員包含有效的數據。

ProcessorType

處理器的處理器架構。

只有當已設定 ValidBits 成員的 ProcessorType 位時,這個成員才會包含有效的數據。

價值 描述
GENPROC_PROCTYPE_XPF x86/x64 處理器系列
GENPROC_PROCTYPE_IPF Intel Itanium 處理器系列

InstructionSet

發生錯誤時所執行的指令集。

只有當已設定 validBits 成員的 InstructionSet 位時,這個成員才會包含有效的數據。

價值 描述
GENPROC_PROCISA_X86 x86
GENPROC_PROCISA_IPF Itanium
GENPROC_PROCISA_X64 x64

ErrorType

發生的錯誤類型。

只有當已設定 ValidBits 成員的 ErrorType 位時,這個成員才會包含有效的數據。

價值 描述
GENPROC_PROCERRTYPE_UNKNOWN 未知的錯誤
GENPROC_PROCERRTYPE_CACHE 快取錯誤
GENPROC_PROCERRTYPE_TLB 翻譯外觀緩衝區錯誤
GENPROC_PROCERRTYPE_BUS 匯流錯誤
GENPROC_PROCERRTYPE_MAE Microarchitecture 錯誤

Operation

發生錯誤時所執行的作業類型。

只有當已設定 validBits 成員的 Operation 位時,這個成員才會包含有效的數據。

價值 描述
GENPROC_OP_GENERIC 未知或泛型作業
GENPROC_OP_DATAREAD 讀取的數據
GENPROC_OP_DATAWRITE 數據寫入
GENPROC_OP_INSTRUCTIONEXE 指令執行

Flags

提供錯誤的其他資訊之旗標的位 OR 組合。

只有當 ValidBits 成員的 Flags 位設定時,這個成員才會包含有效的數據。

價值 描述
GENPROC_FLAGS_RESTARTABLE 在錯誤之後,程式執行可以可靠地重新啟動。
GENPROC_FLAGS_PRECISEIP InstructionPointer 成員中的指令指標直接與錯誤相關聯。
GENPROC_FLAGS_OVERFLOW 發生計算機檢查溢位。 當發生第二個錯誤時,先前錯誤的結果仍在報告資源的錯誤中時,就會發生這種情況。
GENPROC_FLAGS_CORRECTED 硬體或韌體已更正錯誤。

Level

發生錯誤的 結構層級,零是最低層級的快取。

只有當 ValidBits 成員的 Level 位設定時,這個成員才會包含有效的數據。

Reserved

保留供系統使用。

CPUVersion

CPU 版本,其中包含系列、模型和逐步執行資訊。

  • 針對 x86 和 x64 處理器,此成員包含 WHEA_PROCESSOR_FAMILY_INFO 等位。

  • 針對Itanium處理器,此成員包含 CPUID 快取器 3 中提供的數據。

只有當已設定 ValidBits 成員的 CPUVersion 位時,這個成員才會包含有效的數據。

CPUBrandString[128]

CPU 品牌字串。

  • 針對 x86 和 x64 處理器,此成員包含執行 CPUID 指令的結果,其中 EAX 設定為輸入0x80000002,然後執行 CPUID 指令,並將 EAX 設定為輸入0x80000003。 如需 CPUID 指示的詳細資訊,請參閱 Intel 64 和 IA-32 架構軟體開發人員手冊

  • 針對Itanium處理器,此成員包含執行 PAL_BRAND_INFO 程序的結果。

只有當已設定 ValidBits 成員的 CpuBrandString 位時,這個成員才會包含有效的數據。

ProcessorId

可唯一識別系統中邏輯處理器的標識碼。

  • 針對 x86 和 x64 處理器,此成員包含程式設計為本機 APIC ID 快取器的值。

  • 若為 Itanium 處理器,此成員包含程式設計成 LID 快取器的值。

只有當已設定 ValidBits 成員的 ProcessorId 位時,這個成員才會包含有效的數據。

TargetAddress

與錯誤相關聯的目標位址。

只有當 TargetAddress 位 ValidBits 成員設定時,這個成員才會包含有效的數據。

RequesterId

可唯一識別與錯誤相關聯之要求者的標識碼。

只有當已設定 ValidBits 成員的 RequesterId 位時,這個成員才會包含有效的數據。

ResponderId

可唯一識別與錯誤相關聯之回應者的標識碼。

只有當已設定 ValidBits 成員的 ResponderId 位時,這個成員才會包含有效的數據。

InstructionPointer

發生錯誤的指令指標。

只有當已設定 ValidBits 成員的 InstructionPointer 位時,這個成員才會包含有效的數據。

言論

WHEA_PROCESSOR_GENERIC_ERROR_SECTION 結構描述 錯誤記錄之泛型處理器錯誤區段中所包含的錯誤數據。 只有當其中一個描述該錯誤記錄的錯誤記錄區段包含錯誤記錄區段的其中一個 WHEA_ERROR_RECORD_SECTION_DESCRIPTOR 結構 SectionType 成員 PROCESSOR_GENERIC_ERROR_SECTION_GUID時,錯誤記錄才會包含泛型處理器錯誤區段。

要求

要求 價值
最低支援的用戶端 Windows Server 2008、Windows Vista SP1 和更新版本的 Windows 支援。
標頭 ntddk.h

另請參閱

WHEA_ERROR_PACKET

WHEA_ERROR_RECORD_SECTION_DESCRIPTOR

WHEA_PROCESSOR_FAMILY_INFO

WHEA_PROCESSOR_GENERIC_ERROR_SECTION_VALIDBITS