Intel IA-32 User Manual

Page 21

Advertising
background image

Vol. 3A

xxi

CONTENTS

PAGE

22.3.2.1

Loading Guest Control Registers, Debug Registers, and MSRs . . . . . . . . 21-14

22.3.2.2

Loading Guest Segment Registers and Descriptor-Table
Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21-16

22.3.2.3

Loading Guest RIP, RSP, and RFLAGS . . . . . . . . . . . . . . . . . . . . . . . . . . . 21-17

22.3.2.4

Loading Page-Directory Pointers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21-17

22.3.3

Clearing Address-Range Monitoring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21-17

22.4

LOADING MSRS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21-17

22.5

EVENT INJECTION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21-18

22.5.1

Details of Event Injection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21-18

22.5.2

VM Exits During Event Injection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21-20

22.6

SPECIAL FEATURES OF VM ENTRY. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21-21

22.6.1

Interruptibility State . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21-21

22.6.2

Activity State . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21-22

22.6.3

Delivery of Pending Debug Exceptions after VM Entry . . . . . . . . . . . . . . . . . . 21-22

22.6.4

Interrupt-Window Exiting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21-23

22.6.5

VM Entries and Advanced Debugging Features . . . . . . . . . . . . . . . . . . . . . . . 21-24

22.7

VM-ENTRY FAILURES DURING OR AFTER LOADING GUEST STATE. . . . . . 21-24

22.8

MACHINE CHECKS DURING VM ENTRY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21-25

CHAPTER 23
VM EXITS
23.1

ARCHITECTURAL STATE BEFORE A VM EXIT . . . . . . . . . . . . . . . . . . . . . . . . . 22-1

23.2

RECORDING VM-EXIT INFORMATION AND UPDATING CONTROLS. . . . . . . . 22-4

23.2.1

Basic VM-Exit Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22-5

23.2.2

Information for VM Exits Due to Vectored Events . . . . . . . . . . . . . . . . . . . . . . . 22-9

23.2.3

Information for VM Exits During Event Delivery. . . . . . . . . . . . . . . . . . . . . . . . 22-10

23.2.4

Information for VM Exits Due to Instruction Execution. . . . . . . . . . . . . . . . . . . 22-11

23.3

SAVING GUEST STATE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22-12

23.3.1

Saving Control Registers, Debug Registers, and MSRs . . . . . . . . . . . . . . . . . 22-12

23.3.2

Saving Segment Registers and Descriptor-Table Registers . . . . . . . . . . . . . . 22-13

23.3.3

Saving RIP, RSP, and RFLAGS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22-14

23.3.4

Saving Non-Register State . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22-15

23.4

SAVING MSRS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22-17

23.5

LOADING HOST STATE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22-17

23.5.1

Loading Host Control Registers, Debug Registers, MSRs . . . . . . . . . . . . . . . 22-18

23.5.2

Loading Host Segment and Descriptor-Table Registers . . . . . . . . . . . . . . . . . 22-19

23.5.3

Loading Host RIP, RSP, and RFLAGS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22-20

23.5.4

Checking and Loading Host Page-Directory Pointers . . . . . . . . . . . . . . . . . . . 22-20

23.5.5

Updating Non-Register State . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22-21

23.5.6

Clearing Address-Range Monitoring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22-21

23.6

LOADING MSRS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22-21

23.7

VMX ABORTS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22-22

23.8

MACHINE CHECK DURING VM EXIT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22-23

CHAPTER 24
SYSTEM MANAGEMENT
24.1

SYSTEM MANAGEMENT MODE OVERVIEW . . . . . . . . . . . . . . . . . . . . . . . . . . . 26-1

24.1.1

System Management Mode and VMX Operation . . . . . . . . . . . . . . . . . . . . . . . 26-2

24.2

SYSTEM MANAGEMENT INTERRUPT (SMI). . . . . . . . . . . . . . . . . . . . . . . . . . . . 26-2

24.3

SWITCHING BETWEEN SMM AND THE OTHER
PROCESSOR OPERATING MODES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26-3

24.3.1

Entering SMM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26-3

Advertising