Volume 3A System Programming Guide_ Part 1 (794103), страница 19
Текст из файла (страница 19)
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-21Error Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-2264-Bit IDT Gate Descriptors . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-23IA-32e Mode Stack Usage After Privilege Level Change. . . . . . . . . . . . . . . . . . . . . . . .5-26Page-Fault Error Code . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-55Structure of a Task . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-232-Bit Task-State Segment (TSS) . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-5TSS Descriptor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-7Format of TSS and LDT Descriptors in 64-bit Mode . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . 6-9Task Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6-10Task-Gate Descriptor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . .6-11Task Gates Referencing the Same Task. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6-12Nested Tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . .6-17Overlapping Linear-to-Physical Mappings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6-2016-Bit TSS Format. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.6-2264-Bit TSS Format. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6-24Example of Write Ordering in Multiple-Processor Systems . . . . . . . . . . . . . . . . . . . . .7-10Interpretation of APIC ID in Early MP Systems. . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . .7-23Local APICs and I/O APIC in MP System Supporting HT Technology . . . . . . . . . . . . .7-27IA-32 Processor with Two Logical Processors Supporting HT Technology. . . . . . .7-28Generalized Four level Interpretation of the initial APIC ID . . . . . . . . . . . . . .
. . . . . . .7-37Topological Relationships between Hierarchical IDs in a HypotheticalMP Platform. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7-38Relationship of Local APIC and I/O APIC In Single-Processor Systems . . .
. . . . . . . . . 8-3Local APICs and I/O APIC When Intel Xeon Processors Are Used inMultiple-Processor Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-4Local APICs and I/O APIC When P6 Family Processors Are Used inMultiple-Processor Systems . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-4Local APIC Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-7IA32_APIC_BASE MSR (APIC_BASE_MSR in P6 Family). . . .
. . . . . . . . . . . . . . . . . . . . .8-12Local APIC ID Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8-13Local APIC Version Register . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8-15Local Vector Table (LVT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8-17Error Status Register (ESR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8-21Divide Configuration Register . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8-22Initial Count and Current Count Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8-22Interrupt Command Register (ICR) . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . .8-24Logical Destination Register (LDR). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8-31Destination Format Register (DFR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . .8-31Arbitration Priority Register (APR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8-33Interrupt Acceptance Flow Chart for the Local APIC (Pentium 4 and Intel XeonVol. 3A xxixCONTENTSPAGEProcessors). . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-35Interrupt Acceptance Flow Chart for the Local APIC (P6 Family and PentiumProcessors). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . 8-37Figure 8-18. Task Priority Register (TPR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-39Figure 8-19. Processor Priority Register (PPR) . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . 8-40Figure 8-20. IRR, ISR and TMR Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-41Figure 8-21. EOI Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-42Figure 8-22. CR8 Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-43Figure 8-23. Spurious-Interrupt Vector Register (SVR) . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . 8-45Figure 8-24. Layout of the MSI Message Address Register. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-47Figure 8-25. Layout of the MSI Message Data Register . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . 8-48Figure 9-1.Contents of CR0 Register after Reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-5Figure 9-2.Version Information in the EDX Register after Reset. . . . . . . . . . . . . . . . . .
. . . . . . . . . 9-5Figure 9-3.Processor State After Reset. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-21Figure 9-4.Constructing Temporary GDT and Switching to Protected Mode(Lines 162-172 of List File). . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-31Figure 9-5.Moving the GDT, IDT, and TSS from ROM to RAM (Lines 196-261 of List File). . . 9-32Figure 9-6.Task Switching (Lines 282-296 of List File). . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . 9-33Figure 9-7.Applying Microcode Updates. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-37Figure 9-8.Microcode Update Write Operation Flow [1] . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . 9-60Figure 9-9.Microcode Update Write Operation Flow [2] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-61Figure 10-1. Cache Structure of the Pentium 4 and Intel Xeon Processors . . . . . . . . . . . . . . . . . . 10-1Figure 10-2. Cache-Control Registers and Bits Available in IA-32 Processors. . . . .
. . . . . . . . . . 10-14Figure 10-3. Mapping Physical Memory With MTRRs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-29Figure 10-4. IA32_MTRRCAP Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . 10-30Figure 10-5. IA32_MTRR_DEF_TYPE MSR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-31Figure 10-6. IA32_MTRR_PHYSBASEn and IA32_MTRR_PHYSMASKn Variable-RangeRegister Pair. .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-34Figure 10-7. IA32_CR_PAT MSR. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-45Figure 11-1. Mapping of MMX Registers to Floating-Point Registers. . . . . . . . .
. . . . . . . . . . . . . . . 11-2Figure 11-2. Mapping of MMX Registers to x87 FPU Data Register Stack . . . . . . . . . . . . . . . . . . . 11-7Figure 12-1. Example of Saving the x87 FPU, MMX, SSE, SSE2, SSE3, and SSSE3 StateDuring an Operating-System Controlled Task Switch . . . . . . . . . . . . . . . . . . .