HV_X64_CONTEXT structure
The HV_X64_CONTEXT structure describes a context.
Syntax
typedef struct _HV_X64_CONTEXT { UINT64 InitialApicId; UINT64 Rax; UINT64 Rbx; UINT64 Rcx; UINT64 Rdx; UINT64 Rsi; UINT64 Rdi; UINT64 Rbp; UINT64 Rsp; UINT64 R8; UINT64 R9; UINT64 R10; UINT64 R11; UINT64 R12; UINT64 R13; UINT64 R14; UINT64 R15; UINT64 Rip; UINT64 Rflags; UINT64 Cr0; UINT64 Cr2; UINT64 Cr3; UINT64 Cr4; UINT64 Cr8; UINT64 Efer; UINT64 Xfem; UINT64 Dr0; UINT64 Dr1; UINT64 Dr2; UINT64 Dr3; UINT64 Dr6; UINT64 Dr7; HV_X64_TABLE_REGISTER Idtr; HV_X64_TABLE_REGISTER Gdtr; HV_X64_SEGMENT_REGISTER Cs; HV_X64_SEGMENT_REGISTER Ds; HV_X64_SEGMENT_REGISTER Es; HV_X64_SEGMENT_REGISTER Fs; HV_X64_SEGMENT_REGISTER Gs; HV_X64_SEGMENT_REGISTER Ss; HV_X64_SEGMENT_REGISTER Tr; HV_X64_SEGMENT_REGISTER Ldtr; UINT64 KernelGsBase; UINT64 Star; UINT64 Lstar; UINT64 Cstar; UINT64 Sfmask; UINT64 SysenterCs; UINT64 SysenterEip; UINT64 SysenterEsp; UINT64 MsrCrPat; UINT64 MsrMtrrCap; UINT64 MsrMtrrDefType; UINT64 MsrMtrrFixed[11]; UINT64 MsrMtrrVariableBase[8]; UINT64 MsrMtrrVariableMask[8]; UINT32 LocalApicId; UINT32 LocalApicVersion; UINT32 LocalApicLdr; UINT32 LocalApicDfr; UINT32 LocalApicSpurious; UINT32 LocalApicIcrLow; UINT32 LocalApicIcrHigh; UINT32 LocalApicIsr[8]; UINT32 LocalApicTmr[8]; UINT32 LocalApicLvtTimer; UINT32 LocalApicLvtPerfmon; UINT32 LocalApicLvtLint0; UINT32 LocalApicLvtLint1; UINT32 LocalApicCurrentCount; UINT32 LocalApicInitialCount; UINT32 LocalApicDivider; UINT64 LocalApicBaseMsr; union { HV_X64_FX_REGISTERS FxRegisters; HV_X64_X_REGISTERS XRegisters; }; } HV_X64_CONTEXT, *PHV_X64_CONTEXT;
Members
- InitialApicId
-
The initial APIC identifier pseudo register. This value is returned by CPUID.
- Rax
-
The value for the virtual processor's 64-bit RAX general-purpose register.
- Rbx
-
The value for the virtual processor's 64-bit RBX general-purpose register.
- Rcx
-
The value for the virtual processor's 64-bit RCX general-purpose register.
- Rdx
-
The value for the virtual processor's 64-bit RDX general-purpose register.
- Rsi
-
The value for the virtual processor's 64-bit RSI general-purpose register.
- Rdi
-
The value for the virtual processor's 64-bit RDI general-purpose register.
- Rbp
-
The value for the virtual processor's 64-bit RBP general-purpose register.
- Rsp
-
The value for the virtual processor's 64-bit RSP general-purpose register.
- R8
-
The value for the virtual processor's 64-bit R8 general-purpose register.
- R9
-
The value for the virtual processor's 64-bit R9 general-purpose register.
- R10
-
The value for the virtual processor's 64-bit R10 general-purpose register.
- R11
-
The value for the virtual processor's 64-bit R11 general-purpose register.
- R12
-
The value for the virtual processor's 64-bit R12 general-purpose register.
- R13
-
The value for the virtual processor's 64-bit R13 general-purpose register.
- R14
-
The value for the virtual processor's 64-bit R14 general-purpose register.
- R15
-
The value for the virtual processor's 64-bit R15 general-purpose register.
- Rip
-
The value for the virtual processor's 64-bit instruction pointer.
- Rflags
-
The value for the virtual processor's 64-bit flags.
- Cr0
-
The value for the CR0 control register.
- Cr2
-
The value for the CR2 control register.
- Cr3
-
The value for the CR3 control register.
- Cr4
-
The value for the CR4 control register.
- Cr8
-
The value for the CR8 control register. CR8 is only valid on 64-bit operating systems.
- Efer
-
The value for the EFER virtualized model-specific register (MSR). EFER is an MSR, but it acts as an extension to CR4 and as such is treated as a processor register.
- Xfem
-
The value for the XSAVE control register, which is only on platforms that support the XSAVE and XRSTOR feature. XCR0 is XFEM, which is the XSAVE feature enabled mask.
- Dr0
-
The value for the DR0 debug register.
- Dr1
-
The value for the DR1 debug register.
- Dr2
-
The value for the DR2 debug register.
- Dr3
-
The value for the DR3 debug register.
- Dr6
-
The value for the DR6 debug register.
- Dr7
-
The value for the DR7 debug register.
- Idtr
-
An HV_X64_TABLE_REGISTER structure that describes an interrupt descriptor table.
- Gdtr
-
An HV_X64_TABLE_REGISTER structure that describes a global descriptor table.
- Cs
-
An HV_X64_SEGMENT_REGISTER structure that describes a CS segment selector register.
- Ds
-
An HV_X64_SEGMENT_REGISTER structure that describes a DS segment selector register.
- Es
-
An HV_X64_SEGMENT_REGISTER structure that describes an ES segment selector register.
- Fs
-
An HV_X64_SEGMENT_REGISTER structure that describes an FS segment selector register.
- Gs
-
The value for the virtual processor's 64-bit flags.
- Ss
-
An HV_X64_SEGMENT_REGISTER structure that describes an SS segment selector register.
- Tr
-
An HV_X64_TABLE_REGISTER structure that describes an interrupt descriptor table.
- Ldtr
-
An HV_X64_SEGMENT_REGISTER structure that describes an LDTR segment selector register.
- KernelGsBase
-
The value for the GSBASE virtualized model-specific register (MSR).
- Star
-
The value for the STAR virtualized MSR.
- Lstar
-
The value for the LSTAR virtualized MSR.
- Cstar
-
The value for the CSTAR virtualized MSR.
- Sfmask
-
The value for the SFMASK virtualized MSR.
- SysenterCs
-
The value for the SYSENTERCS virtualized MSR.
- SysenterEip
-
The value for the SYSENTEREIP virtualized MSR.
- SysenterEsp
-
The value for the SYSENTERESP virtualized MSR.
- MsrCrPat
-
The value for the MSRCRPAT virtualized MSR.
- MsrMtrrCap
-
The value for the MSRMTRRCAP virtualized MSR.
- MsrMtrrDefType
-
The value for the MSRMTRRDEFTYPE virtualized MSR.
- MsrMtrrFixed
-
The value for the MSRMTRRFIXED virtualized MSR.
- MsrMtrrVariableBase
-
The value for the MSRMTRRVARIABLEBASE virtualized MSR.
- MsrMtrrVariableMask
-
The value for the MSRMTRRVARIABLEMASK virtualized MSR.
- LocalApicId
-
The identifier value for the local APIC state.
- LocalApicVersion
-
The version value for the local APIC state.
- LocalApicLdr
-
The LDR value for the local APIC state.
- LocalApicDfr
-
The DFR value for the local APIC state.
- LocalApicSpurious
-
The spurious value for the local APIC state.
- LocalApicIcrLow
-
The ICR low value for the local APIC state.
- LocalApicIcrHigh
-
The ICR high value for the local APIC state.
- LocalApicIsr
-
An array of eight ISR values for the local APIC state.
- LocalApicTmr
-
An array of eight TMR values for the local APIC state.
- LocalApicLvtTimer
-
The LVT timer value for the local APIC state.
- LocalApicLvtPerfmon
-
The LVT perfmon value for the local APIC state.
- LocalApicLvtLint0
-
The LVTLINT0 value for the local APIC state.
- LocalApicLvtLint1
-
The LVTLINT1 value for the local APIC state.
- LocalApicCurrentCount
-
The current count for the local APIC state.
- LocalApicInitialCount
-
The initial count for the local APIC state.
- LocalApicDivider
-
The divider value for the local APIC state.
- LocalApicBaseMsr
-
The base MSR value for the local APIC state.
- ( unnamed union )
-
- FXSAVE/FXSTOR.
- FxRegisters
-
An HV_X64_FX_REGISTERS union that describes floating-point, MMX, and XMM registers that are formatted by FXSAVE and FXRSTOR.
- XRegisters
-
An HV_X64_FX_REGISTERS union that describes floating-point, MMX, and XMM registers that are formatted by FXSAVE and FXRSTOR.
Remarks
Requirements
Header |
|
---|
See also
Send comments about this topic to Microsoft
Build date: 11/16/2013