割込み処理とは?わりこみしょり
割込み処理とは、実行中の処理を中断してレジスタなどの状態を退避し、別の処理(割込みハンドラ)を実行してから状態を復元して元へ戻る仕組み。原因が実行中のプログラム自身にある内部割込みと、CPUの外側の事象による外部割込みに分かれ、どちらに当たるかで復帰の扱いと優先度の設計が変わる。
最終更新:2026-10-06
この語が出る過去問を解く →背景
入出力の完了を知る方法にはCPUが繰り返し状態を見に行くポーリングもあるが、待っているあいだCPUは他の仕事ができない。CPUと周辺機器の速度差が数千倍もある以上、遅い側から知らせに来てもらうほうが合理的である。割込みはこの主導権の逆転によって多重プログラミングを成立させた仕組みで、応用情報ではOSの基礎として頻出する。
具体例
キーボード入力、プリンタの印刷完了通知、タイマの満了は外部割込みで、ゼロ除算やページフォールト、特権命令違反は内部割込みにあたる。OSが一定周期のタイマ割込みでスケジューラを起動し、プロセスを強制的に切り替えているのがプリエンプティブなマルチタスクの実体である。
試験での引っ掛け
分類の軸を混ぜないこと。内部・外部は原因の所在による分類で、ハードウェア・ソフトウェアという切り口と混ざると選択肢を読み違える(SVCによる割込みは内部割込み)。復帰のためにプログラムカウンタとPSWを退避する点、多重割込みでは優先度の高いものが処理中の割込みを中断できる点も頻出。
関連用語
出た過去問
出典:令和4年度 秋期 応用情報技術者試験 午前 問18(IPA)
優先度に基づくプリエンプティブなスケジューリングを行うリアルタイムOSにおける割込み処理の説明のうち、適切なものはどれか。ここで、割込み禁止状態は考慮しないもの…
正解:割込み処理ルーチンは、最も優先度の高いタスクよりも優先して実行される。
要点:割込み処理ルーチンは最優先タスクよりも先に実行される
割込み処理ルーチンは、タスクスケジューリングの枠組みの外でハードウェアの割込みによって起動されます。そのため、実行中のタスクがどれだけ優先度の高いタスクであっても、それを中断して先に実行されます。処理が長引くとタスクの実行が遅れるので、割込み処理は短く保つのが原則です。
出典・参考
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。