WHEA_X64_REGISTER_STATE 구조체(ntddk.h)

WHEA_X64_REGISTER_STATE 구조체는 x64 프로세서 레지스터의 상태를 설명합니다.

구문

typedef struct _WHEA_X64_REGISTER_STATE {
  ULONGLONG Rax;
  ULONGLONG Rbx;
  ULONGLONG Rcx;
  ULONGLONG Rdx;
  ULONGLONG Rsi;
  ULONGLONG Rdi;
  ULONGLONG Rbp;
  ULONGLONG Rsp;
  ULONGLONG R8;
  ULONGLONG R9;
  ULONGLONG R10;
  ULONGLONG R11;
  ULONGLONG R12;
  ULONGLONG R13;
  ULONGLONG R14;
  ULONGLONG R15;
  USHORT    Cs;
  USHORT    Ds;
  USHORT    Ss;
  USHORT    Es;
  USHORT    Fs;
  USHORT    Gs;
  ULONG     Reserved;
  ULONGLONG Rflags;
  ULONGLONG Eip;
  ULONGLONG Cr0;
  ULONGLONG Cr1;
  ULONGLONG Cr2;
  ULONGLONG Cr3;
  ULONGLONG Cr4;
  ULONGLONG Cr8;
  WHEA128A  Gdtr;
  WHEA128A  Idtr;
  USHORT    Ldtr;
  USHORT    Tr;
} WHEA_X64_REGISTER_STATE, *PWHEA_X64_REGISTER_STATE;

멤버

Rax

누적기 레지스터입니다.

Rbx

기본 레지스터입니다.

Rcx

개수 레지스터입니다.

Rdx

데이터 레지스터입니다.

Rsi

원본 인덱스 레지스터입니다.

Rdi

대상 인덱스 레지스터입니다.

Rbp

기본 포인터 레지스터입니다.

Rsp

스택 포인터 레지스터입니다.

R8

범용 레지스터 R8.

R9

범용 레지스터 R9입니다.

R10

범용 레지스터 R10.

R11

범용 레지스터 R11입니다.

R12

범용 레지스터 R12.

R13

범용 레지스터 R13.

R14

범용 레지스터 R14.

R15

범용 레지스터 R15.

Cs

코드 세그먼트 레지스터입니다.

Ds

데이터 세그먼트 레지스터입니다.

Ss

스택 세그먼트 레지스터입니다.

Es

추가 세그먼트 레지스터입니다.

Fs

범용 세그먼트는 FS를 등록합니다.

Gs

범용 세그먼트는 GS를 등록합니다.

Reserved

시스템에서 사용하도록 예약되었습니다.

Rflags

플래그 레지스터입니다.

Eip

명령 포인터 레지스터입니다.

Cr0

컨트롤 레지스터 0입니다.

Cr1

컨트롤 레지스터 1입니다.

Cr2

컨트롤 레지스터 2입니다.

Cr3

컨트롤 레지스터 3입니다.

Cr4

컨트롤 레지스터 4입니다.

Cr8

컨트롤 레지스터 8입니다.

Gdtr

전역 설명자 테이블 레지스터의 상태를 포함하는 WHEA128A 구조체입니다. WHEA128A 구조체는 128비트 값을 설명하고 다음과 같이 정의됩니다.

typedef struct _WHEA128A {
  ULONGLONG  Low;
  LONGLONG  High;
} WHEA128A, *PWHEA128A;

낮음

128비트 값의 낮은 순서 64비트입니다.

높음

128비트 값의 상위 64비트입니다.

Idtr

인터럽트 설명자 테이블 레지스터의 상태를 포함하는 WHEA128A 구조체입니다. WHEA128A 구조체에 대한 설명은 Gdtr 멤버에 대한 설명을 참조하세요.

Ldtr

로컬 설명자 테이블 레지스터입니다.

Tr

작업 등록입니다.

설명

WHEA_XPF_CONTEXT_INFO 구조체의 RegisterContextType 멤버가 XPF_CONTEXT_INFO_64BITCONTEXT 설정되면 해당 구조체의 RegisterData 멤버에 WHEA_X64_REGISTER_STATE 구조체가 포함됩니다.

요구 사항

요구 사항
헤더 ntddk.h(Ntddk.h 포함)

추가 정보

WHEA_XPF_CONTEXT_INFO