Volume 2 System Programming (794096), страница 9
Текст из файла (страница 9)
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 427Local Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 427APIC Timer Interrupt. . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 429Local Interrupts LINT0 and LINT1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 431Performance Monitor Counter Interrupts . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 431Thermal Sensor Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 432xiAMD64 Technology16.516.616.716.817Extended Interrupts . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 432APIC Error Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 432Spurious Interrupts. . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 434Interprocessor Interrupts (IPI) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 434Local APIC Handling of Interrupts . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . 438Receiving System and IPI Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 438Lowest Priority Messages and Arbitration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . 439Accepting System and IPI Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 440Selecting and Handling Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 443SVM Support for Interrupts and the Local APIC . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . 445Extended Interrupt LVT Registers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 446OS-Visible Workaround Information . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .44717.11824593—Rev. 3.13—July 2007Erratum Process Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 448Hardware P-State Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .451Appendix AA.1A.2A.3A.4A.5A.6A.7A.8A.9Appendix BB.1Appendix CMSR Cross-Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .453MSR Cross-Reference by MSR Address. . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . 453System-Software MSRs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 457Memory-Typing MSRs . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . 458Machine-Check MSRs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 459Software-Debug MSRs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . 461Performance-Monitoring MSRs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 461Secure Virtual Machine MSRs . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . 462System Management Mode MSRs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 463CPUID Name MSR Cross-Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 463Layout of VMCB .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .465Layout of VMCB. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465SVM Intercept Exit Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . .471Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 473xiiContents24593—Rev. 3.13—July 2007AMD64 TechnologyFiguresFigure 1-1.Segmented-Memory Model . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6Figure 1-2.Flat Memory Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . 7Figure 1-3.Paged Memory Model. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8Figure 1-4.64-Bit Flat, Paged-Memory Model. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . 9Figure 1-5.Real-Address Memory Model. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10Figure 1-6.Operating Modes of the AMD64 Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . 12Figure 1-7.System Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16Figure 1-8.System-Data Structures. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . 18Figure 3-1.Control Register 0 (CR0) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43Figure 3-2.Control Register 2 (CR2)—Legacy-Mode . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46Figure 3-3.Control Register 2 (CR2)—Long Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46Figure 3-4.Control Register 3 (CR3)—Legacy-Mode Non-PAE Paging. . . . . . . . . . .
. . . . . . . . . . . . . . . . 46Figure 3-5.Control Register 3 (CR3)—Legacy-Mode PAE Paging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46Figure 3-6.Control Register 3 (CR3)—Long Mode . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . 46Figure 3-7.Control Register 4 (CR4) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47Figure 3-8.RFLAGS Register . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51Figure 3-9.Extended Feature Enable Register (EFER). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55Figure 3-10. AMD64 Architecture Model-Specific Registers. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . 57Figure 3-11. System-Configuration Register (SYSCFG) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58Figure 4-1.Segmentation Data Structures. . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66Figure 4-2.Segment and Descriptor-Table Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67Figure 4-3.Segment Selector. . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67Figure 4-4.Segment-Register Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69Figure 4-5.FS and GS Segment-Register Format—64-Bit Mode. . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . 70Figure 4-6.Global and Local Descriptor-Table Access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72Figure 4-7.GDTR and IDTR Format—Legacy Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
72Figure 4-8.GDTR and IDTR Format—Long Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73Figure 4-9.Relationship between the LDT and GDT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74Figure 4-10. LDTR Format—Legacy Mode .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75Figure 4-11. LDTR Format—Long Mode. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75Figure 4-12. Indexing an IDT .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77FiguresxiiiAMD64 Technology24593—Rev. 3.13—July 2007Figure 4-13. Generic Segment Descriptor—Legacy Mode . . . . . . . . . . . . . . . . . .