// io apic、apic
// 1.io apic, intel从pentiun III开始引入一种名为I/O高级可编程控制器(io apic)用于代替老式8259A可编程控制器。
// 2.apic, cpu内部都包含一个本地apic,每个本地apic都有32位的寄存器,一个内部时钟,一个本地定时设备
// 及为本地apic中断保留的两条额外的IRQ线,LINT0和LINT1。所有本地apic都连接到一个外部 io apic。
// io apic的组成:
// 一组24条IRQ线,一张24项的中断重定向表,可编程寄存器,以及通过APIC总线发送和接收APIC信息的一个信息单元。
//
// io apic与8259A的区别:
// 中断优先级并不与引脚号关联:中断重定向表中的每一项都可以被单独编程以指明中断向量和优先级,
// 目标处理器以及选择目标处理器的方式,重定向表中的信息用于把每个外部IRQ信号转换为一条信息,
// 然后,通过APIC总线把信息发送给一个或多个本地APIC.
转自 http://blog.csdn.net/nerdx/article/details