models 6Xh (Carrizo) processors and newer. Issues There are a number of known bugs in implementations of APIC systems, especially with concern to how the 8254 is connected. Defective BIOSes may not set up interrupt routing properly, or provide incorrect ACPI tables and Intel MultiProcessor Specification (MPS) tables. The APIC can also be a cause of system failure when the operating system does not support it properly. On older operating systems, the I/O and local APICs often had to be disabled. While this is not possible anymore due to the prevalence of symmetric multiprocessor and multi-core systems, the bugs in the firmware and the operating systems are now a rare occurrence. Competition AMD and Cyrix once proposed a somewhat similar-in-purpose OpenPIC architecture supporting up to 32 processors; it had at least declarative support from IBM and Compaq around 1995. No x86 motherboard was released with OpenPIC however. After the OpenPIC's failure in the x86 market, AMD licensed Intel's APIC for its AMD Athlon and later processors. IBM however developed their MultiProcessor Interrupt Controller (MPIC) based on the OpenPIC register specifications. MPIC was used in PowerPC based designs, including those of IBM, for instance in some RS/6000 systems, but also by Apple, as late as their Power Mac G5s. See also Intel 8259 Programmable interrupt controller (PIC) Inter-processor interrupt (IPI) Interrupt Interrupt handler Interrupt latency Message Signaled Interrupts (MSI) Non-maskable interrupt (NMI) References Further reading IA-32 Intel Architecture Software Developer’s Manual, Volume 3A: System Programming Guide, Part 1, chapter 10. External links Intel 64 Architecture x2APIC Specification (PDF) More information on the Intel x2APIC Architecture can be found in the ''Intel 64 and IA-32 Architectures Software Developer's Manuals Motherboard Interrupts Apic Architecture IBM PC compatibles X86 architecture