Intel が、Advanced Programmable Interrupt Controller(APIC)を導入したのは 1993 年頃のことだった。その名が示すとおり、APIC はプロセッサ上での割り込みを管理するものだ。この「割り込み」はハードウェアによって発生する電気パルスで、CPU に対し「いま行っている動きを止めて、この緊急事態に対処せよ」と伝える。それはカウントダウンがゼロになりそうな状態、あるいはハードドライブがデータ転送を終えそうになっているなどの状況であるかもしれない。多くの場合、ドライバは、CPU が行っていた動作を続けるより前に、その割り込みに対処することを最終的に勧告される。
この APIC の設計は分割されている。マザーボード上のそれぞれのプロセッサコア用の「ローカル APIC」と、通常の「IO APIC」だ。この IO APIC はハードウェアと繋がっており、割り込みのシグナルをローカル APIC にルートする。それはコアに割り込みを行うか否かを決定し、またコア同士のメッセージを交換する。
この APIC の設計は分割されている。マザーボード上のそれぞれのプロセッサコア用の「ローカル APIC」と、通常の「IO APIC」だ。この IO APIC はハードウェアと繋がっており、割り込みのシグナルをローカル APIC にルートする。それはコアに割り込みを行うか否かを決定し、またコア同士のメッセージを交換する。