/* * EFER should only be used to set the NXE bit (if required) * when starting a vCPU in 32bit mode with paging enabled or * to set the LME/LMA bits in order to start the vCPU in * compatibility mode.
*/
uint64_t efer;
/* * The layout of the _ar fields of the segment registers is the * following: * * Bits [0,3]: type (bits 40-43). * Bit 4: s (descriptor type, bit 44). * Bit [5,6]: dpl (descriptor privilege level, bits 45-46). * Bit 7: p (segment-present, bit 47). * Bit 8: avl (available for system software, bit 52). * Bit 9: l (64-bit code segment, bit 53). * Bit 10: db (meaning depends on the segment, bit 54). * Bit 11: g (granularity, bit 55) * Bits [12,15]: unused, must be blank. * * A more complete description of the meaning of this fields can be * obtained from the Intel SDM, Volume 3, section 3.4.5.
*/
/* * Using VCPU_HVM_MODE_64B implies that the vCPU is launched * directly in long mode, so the cached parts of the segment * registers get set to match that environment. * * If the user wants to launch the vCPU in compatibility mode * the 32-bit structure should be used instead.
*/
};
struct vcpu_hvm_context { #define VCPU_HVM_MODE_32B 0 /* 32bit fields of the structure will be used. */ #define VCPU_HVM_MODE_64B 1 /* 64bit fields of the structure will be used. */
uint32_t mode;
uint32_t pad;
/* CPU registers. */ union { struct vcpu_hvm_x86_32 x86_32; struct vcpu_hvm_x86_64 x86_64;
} cpu_regs;
}; typedefstruct vcpu_hvm_context vcpu_hvm_context_t;
#endif/* __XEN_PUBLIC_HVM_HVM_VCPU_H__ */
Messung V0.5
¤ Dauer der Verarbeitung: 0.9 Sekunden
(vorverarbeitet)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.