ほとんどの ARM デュアルまたはマルチ コア システムでは、例外/ベクタ テーブルは1 つと 1 つだけのようです。@the 典型的な 0x0000 または 0xffff0000 アドレスです。1つの例外(しゃれは意図されていません:-)はcortex-M3のようです。ここには、可変/動的例外/ベクトルテーブルベースアドレスを持つレジスタVTOR(おそらく各コア用)があります。
一方、Intel x86 マルチコア アーキテクチャは複数の IDT (個々のコアごとに複数の IDTR レジスタ) をサポートします。
したがって、新しいOS(割り込み処理スキーム)を設計する場合、GICが論理のいずれかを中断するときに、単一の例外( FIQ など)に対して、異なるコアに対して異なるISRを使用できないことが少し制限されます。アームコア
もちろん、割り込みをチェーンおよび/または共有し、スピンロックなどの同期メカニズムを使用できると主張することもできますが、やはり...私には制限のように思えます。
ARM がこれをすべての最新の ARM マルチコア/バージョンで標準機能 (cortex-M3 VTOR など) にしないのはなぜですか?
何かご意見は?