最終更新:2016-09-16 (金) 15:52:19 (2778d)
割り込みベクタ番号
Top / 割り込みベクタ番号
- プロセッサは、割込み要求を受け、割込み処理を開始すると、割込み要求元(PIC)から割り込みベクタ番号を得る。
- 割り込みベクタ番号で、割り込みベクタテーブルを引いて、割り込みベクタ番号に割当てられた処理を開始する
IA-32 インテル アーキテクチャー・ソフトウェア・デベロッパーズ・マニュアル
- 例外と割り込みを処理しやすいように、IA-32 アーキテクチャで定義されている、プロセッサの特殊な処理を必要とする各例外条件および割り込み条件には、ベクタと呼ばれる個別の識別番号が割り当てられている。
- プロセッサは、例外または割り込みに割り当てられたベクタを、プロセッサの割り込みディスクリプタテーブル(IDT)へのインデックスとして使用し、例外ハンドラまたは割り込みハンドラの入口点を見付ける。
- ベクタ番号の許容範囲は 0 ~ 255 である。0 ~ 31 の範囲のベクタは、アーキテクチャ上で定義される例外と割り込みのために、IA-32 アーキテクチャによって予約されている。この範囲内のベクタの中には、現時点では機能が定義されていないものもある。この範囲内の割り当てられていないベクタは、将来に備えて予約されている。予約済みベクタを使用してはならない。
IA-32
ベクタ番号 説明 0 除算エラー 1 予約済み 2 NMI割り込み 3 ブレークポイント 4 オーバーフロー 5 BOUNDの範囲外 6 無効オペコード 7 デバイス使用不可 8 ダブルフォルト 9 コプロセッサ・セグメント・オーバーラン 10 無効TSS 11 セグメント不在 12 スタック・セグメント・フォルト 13 一般保護 14 ページフォルト 15 予約済み 16 x86 FPU浮動小数点エラー 17 アライメント・チェック 18 マシンチェック 19 SIMD浮動小数点例外 20-31 インテルが予約済み。使用禁止 32-255 ユーザー定義割り込み