NMI(ノンマスカブル割り込み)とは?コンピュータの基本概念をわかりやすく解説

Explanation of IT Terms

NMIとは?

NMI(Non-Maskable Interrupt: ノンマスカブル割り込み)とは、コンピュータにおいて最優先される割り込みのことです。通常の割り込み(RI: Restartable Interrupt)は、割り込みを無視する設定ができるマスクビットというフラグによって、割り込みを無効化することができます。しかし、NMIはマスクされず、必ず処理されるため、システムが異常状態に陥った際に重要な役割を果たします。

NMIの重要性

NMIは、通常の割り込みが発生できない場合にも発生する可能性があるため、システムが異常状態に陥った場合にも動作が可能な状態を保証します。例えば、マシンのハードウェア障害や、CPUがフリーズしてしまった場合などには、NMIが発生し、システムを強制的に停止させることができます。このように、NMIはシステムの安定性と信頼性を高める上で欠かせない役割を果たしています。

NMIの処理の流れ

NMIが発生すると、CPUは現在実行中のプログラムの実行を中断し、NMI割り込みベクタ(割り込み番号を格納するベクタ)に格納されたアドレスにジャンプします。そこからは、通常の割り込み処理と同様に、NMIハンドラルーチンと呼ばれる特殊な割り込み処理ルーチンが実行されます。この処理の中で、システムが異常状態に陥っていないかをチェックし、異常がある場合には再起動または修復処理を行います。その後、NMIハンドラルーチンから通常のプログラムに戻り、プログラムの実行を再開します。

まとめ

NMIは、コンピュータにおいて最優先される割り込みであり、通常の割り込みが発生できない場合にも処理が可能な状態を保証する重要な役割を果たしています。NMIが発生すると、CPUはNMI割り込みベクタに格納されたアドレスにジャンプし、NMIハンドラルーチンが実行されます。NMIハンドラルーチンは、異常がある場合には再起動または修復処理を行い、通常のプログラムに戻ります。NMIはシステムの安定性と信頼性を高める上で欠かせない要素であるため、理解しておくことは重要です。

参考記事

参考サイト

合わせて読みたい

【Google Chrome】右クリックで翻訳がでなくなった時の対策方法の決定版