辞書へ戻る概念の一覧

割り込み

わりこみ概念

実行中の処理を一時中断し、緊急の事象に対応する仕組み。入出力やリアルタイム処理を成り立たせる基礎概念。

年表

1951UNIVAC Iが算術オーバーフロー時に処理を中断する仕組みを備える(例外処理としての割り込みの初期例)
1954NBS DYSEACが入出力向けの割り込み(2つのプログラムカウンタの切り替え)を導入

概要

CPUが今の処理を一時中断し、外部からの信号(キー入力、通信の到着、タイマーなど)に応じた別の処理を先に実行してから、元の処理へ戻る仕組み。これがあることで、CPUは「入力が来るかもしれない」と待ち続けて時間を無駄にせずに済む。入出力処理やリアルタイム処理、OSのマルチタスクを成り立たせている基礎概念の一つ。

時代背景

最初期の例として、1951年のUNIVAC I が算術オーバーフロー発生時に実行列を中断し、メモリ番地000にある2命令の処理へ飛ぶ仕組みを備えていた。ただしこれは例外処理であり、入出力向けの割り込みとしては、1954年に米国標準局(NBS)が開発したDYSEACが最初とされる。DYSEACは2つのプログラムカウンタを持ち、入出力信号が来ると実行をもう一方のプログラムカウンタへ切り替える方式だった。

現在

今日のCPUやOSでも割り込みは中核的な仕組みであり続けている。キーボード入力、ネットワーク到着、タイマー、ハードウェアの異常など、あらゆる非同期イベントの処理に使われ、OSのスケジューラやデバイスドライバの動作もこの仕組みの上に成り立っている。

関連項目

  • レジスタCPUのすぐ内側にある、ごく小さく非常に高速な記憶場所。計算の途中の値や、いま扱っているデータを一時的に置く「作業机の上」にあたる。レジスタのサイズ(ビット幅)が、CPUが一度に処理できる情報量の目安になる。
  • 仮想記憶物理メモリより大きな記憶空間があるように見せる仕組み。各プログラムに独立した広いアドレス空間を与える。
  • CPU計算や命令の実行を担う、コンピュータの頭脳にあたる部品。プログラムの命令を一つずつ読み取り、計算し、結果を返す。一度に扱えるビット数(8bit・64bitなど)や処理速度がコンピュータの性能を大きく左右する、最も中心的な装置。

関連技術

出典