読み方 : ないぶわりこみ

内部割り込み【internal interrupt】ソフトウェア割り込み/software interrupt

概要

内部割り込みとは実行中のプログラム自身に起因して発生する割り込みのこと。プログラムの実行中に生じたエラーや例外への対応、あるいはプログラムが意図的に発行するシステムコールなどが該当し、外部のハードウェアが引き起こす「外部割り込み」と対比される。
内部割り込みのイメージ画像

コンピュータにおける「割り込み」(interrupt)とは、実行中の処理を一時中断して別の処理へ制御を移す仕組みである。内部割り込みはCPUが現在実行している命令の処理と連動して発生する。発生した割り込みに対して、あらかじめ定められた処理ルーチン(割り込みハンドラ)が呼び出され、対応が完了すると元の処理へ復帰する。

内部割り込みが発生する原因は、エラー、例外によるものと、プログラムが意図的に発行するものとに分けられる。前者の例としてゼロ除算、存在しない命令の実行、書き込みが禁止されたメモリ領域へのアクセスなどがある。CPUがこれらの異常を検知すると対応する例外ハンドラへ制御を移し、オペレーティングシステム(OS)がエラーの内容に応じてメッセージの表示や異常終了などの処理を行う。

後者は、利用者プログラムがOSの中核部である「カーネル」(kernel)の機能を呼び出す際に発生する。アプリケーションがカーネルの機能を呼び出すことはできないため、専用の割り込み命令を実行してCPUの実行モードをユーザーモードからカーネルモードへ切り替え、制御をOSに渡す。この仕組みを「システムコール」(system call)と呼び、その際に行われる割り込みを「SVC割り込み」(スーパーバイザコール割り込み)と呼ぶ。ファイル操作や入出力処理、プロセス管理といったOSの機能は、この経路を通じて安全に利用される。

これに対し、実行中のプログラムとは無関係な外部要因によって発生する割り込みを「外部割り込み」(external interrupt)または「ハードウェア割り込み」(hardware interrupt)という。キーボード入力やタイマーの満了、ディスクI/Oの完了、ネットワーク機器からの通知などがその例であり、プログラムの進行とは非同期に発生する。CPUは内部割り込みと外部割り込みをそれぞれ区別して処理し、対応する割り込みハンドラへ制御を移すことでシステム全体の動作を管理している。

(2026.6.18更新)
 

他の辞典等による「内部割り込み」の解説 (外部サイト)

資格試験などの「内部割り込み」の出題履歴

▼ 基本情報技術者試験
令3修7/令2修1/平30春/平28修1/平26秋/平24修7/平22秋】 内部割込みに分類されるものはどれか。
この記事の著者 : (株)インセプト IT用語辞典 e-Words 編集部
1997年8月より「IT用語辞典 e-Words」を執筆・編集しています。累計公開記事数は1万ページ以上、累計サイト訪問者数は1億人以上です。学術論文や官公庁の資料などへも多数の記事が引用・参照されています。