Skip to the content.

最終更新日:2026年7月25日

まず結論

割込みとは、実行中の処理をいったん止めて、優先して別の処理を行う仕組みです。

基本情報技術者試験では、外部割込みと内部割込みは、次のように切り分けます。

分類 原因 判断の合図
内部割込み 実行中のプログラムが原因 0除算、オーバーフロー、ページフォールト、SVC
外部割込み CPU外部や装置側の要因 入出力割込み、タイマ割込み、機械チェック割込み

特に、ハードウェアが異常を検知したときに発生する割込み は、機械チェック割込みとして 外部割込み に分類されます。

直感的な説明

割込みは、授業中に先生が説明している場面で考えると分かりやすいです。

先生が説明している途中で、次のようなことが起きたとします。

生徒が質問する
チャイムが鳴る
校内放送が入る
先生が板書ミスに気づく

このとき、先生は説明をいったん止めて、先に対応することがあります。

コンピュータでも同じです。

CPUがプログラムを実行している途中で、優先して対応すべきことが起きると、現在の処理をいったん中断して、割込み処理を行います。

ここで大事なのは、何が原因で割込みが起きたか です。

実行中のプログラムが原因
  → 内部割込み

CPU外部や装置側の原因
  → 外部割込み

例えば、プログラムの計算でオーバーフローが起きたなら、実行中のプログラムが原因なので内部割込みです。

一方で、ハードウェアが異常を検知した場合は、装置側の要因なので外部割込みです。

定義・仕組み

割込みは、実行中のプログラムをいったん中断し、割込みの原因に応じた処理を優先して実行する仕組みです。

割込みには、大きく分けて内部割込みと外部割込みがあります。

分類 意味
内部割込み 実行中のプログラムや命令の実行が原因で起こる割込み
外部割込み CPU外部の装置やハードウェア側の要因で起こる割込み

内部割込みの例は、次のようなものです。

内容
0除算 0で割ろうとしたときに発生する
オーバーフロー 演算結果が扱える範囲を超えたときに発生する
ページフォールト 主記憶にないページを参照しようとしたときに発生する
SVC割込み プログラムがOSにサービスを依頼するときに発生する
不正命令 実行できない命令を実行しようとしたときに発生する
メモリ保護違反 アクセスしてはいけない領域へアクセスしたときに発生する

外部割込みの例は、次のようなものです。

内容
入出力割込み 入出力装置の処理完了などで発生する
タイマ割込み 一定時間の経過などで発生する
機械チェック割込み ハードウェア異常を検知したときに発生する
電源異常割込み 電源異常や停電の検知で発生する
コンソール割込み 操作員や外部操作によって発生する

FE試験では、細かいCPU制御よりも、
原因がプログラム側か、装置・ハードウェア側か を見ることが大切です。

このテーマは、基本情報技術者試験の「コンピュータ構成要素」や「OS」と関係する内容です。公式の出題範囲やシラバスは、IPA:基本情報技術者試験 から確認できます。

科目Aでどう出る?

科目Aでは、割込みの説明から、内部割込みか外部割込みかを選ぶ問題が出やすいです。

判断するときは、まず発生原因を見ます。

説明の中心 分類 理由
主記憶に存在しないページをアクセスしようとした 内部割込み 実行中のプログラムによるページフォールト
OSに対してサービスを依頼した 内部割込み SVC割込み
ハードウェアが異常を検知した 外部割込み 機械チェック割込み
浮動小数点演算でオーバーフローが起きた 内部割込み 演算処理が原因

選択肢以外にも、次の例を押さえておくと安全です。

割込みの例 分類 判断の合図
0で割ろうとした 内部割込み プログラムの演算が原因
不正な命令を実行しようとした 内部割込み 命令実行が原因
アクセス権のないメモリを参照した 内部割込み プログラムのアクセスが原因
入出力装置が処理完了を通知した 外部割込み 装置側からの通知
タイマが一定時間の経過を通知した 外部割込み タイマ装置が原因
電源異常を検出した 外部割込み ハードウェア・電源側の原因

試験では、次の一言でかなり切りやすくなります。

プログラムが原因なら内部
装置・ハードウェアが原因なら外部

どんな場面で使う?

OSやCPUの処理の流れを読むときに、割込みの考え方が役立ちます。

例えば、CPUがプログラムを実行している途中で、入出力装置から処理完了の通知が来たとします。

この場合、CPUは実行中の処理を一時的に中断し、入出力完了に対応する処理を行います。

通常の処理を実行
  ↓
入出力装置から通知
  ↓
割込み処理を実行
  ↓
元の処理に戻る

このように、割込みは「今の処理を止める」だけでなく、必要な処理を先に済ませて、元の処理へ戻るための仕組みです。

問題文で読むときは、次の点を確認すると理解しやすくなります。

1. 何が原因で割込みが発生したか
2. 実行中のプログラムが原因か
3. 外部装置やハードウェアが原因か
4. 割込み処理後に元の処理へ戻るか

よくある誤解・混同

誤解1:OSに依頼するのでSVC割込みは外部割込みだと思う

SVC割込みは、OSにサービスを依頼するときに発生する割込みです。

名前だけ見ると、OSという外側のものに依頼しているように感じます。

しかし、SVC割込みは、実行中のプログラムが命令によって発生させる割込みです。

そのため、分類は 内部割込み です。

OSに依頼する
でも、実行中のプログラムが原因
  → 内部割込み

誤解2:ページフォールトを外部割込みだと思う

ページフォールトは、主記憶に存在しないページを参照しようとしたときに発生します。

ディスクからページを読み込むことがあるため、外部装置の話に見えるかもしれません。

しかし、発生のきっかけは、実行中のプログラムがそのページを参照したことです。

そのため、ページフォールトは 内部割込み です。

誤解3:ハードウェア異常を内部割込みだと思う

ハードウェア異常は、CPUや装置側で検知される外部要因です。

そのため、機械チェック割込みとして、外部割込みに分類されます。

ハードウェアが異常を検知
  → 機械チェック割込み
  → 外部割込み

誤解4:オーバーフローを外部割込みだと思う

オーバーフローは、演算結果が扱える範囲を超えたときに発生します。

演算中に起きるため、実行中のプログラムが原因です。

そのため、オーバーフローは 内部割込み です。

迷いやすい例 正しい分類
ページフォールト 内部割込み
SVC割込み 内部割込み
オーバーフロー 内部割込み
機械チェック割込み 外部割込み
入出力割込み 外部割込み
タイマ割込み 外部割込み

まとめ(試験直前用)

  • 割込みは、実行中の処理をいったん中断して優先処理を行う仕組み
  • 実行中のプログラムが原因 なら内部割込み
  • CPU外部・装置・ハードウェアが原因 なら外部割込み
  • SVC、ページフォールト、オーバーフローは内部割込み
  • 入出力、タイマ、機械チェックは外部割込み

© 2024-2026 stemtazoo. All rights reserved.