システム割り込みとは何ですか?

メインフレームコンピュータ

優先割り込みにより、コンピュータは多くのプログラムを同時に実行できます。

画像クレジット: Jupiterimages / Photos.com / Getty Images

オーブントースターを実行するコンピューターなど、一度に1つのタスクを実行するコンピューターもありますが、デスクトップPC、スマートフォン、およびメインフレームには、同時に動作する複数のプロセスがあります。 コンピュータは、システム割り込みを介してこれを管理します。これは、あるプログラムが他のプログラムよりも一時的に優先されるメカニズムです。 中央処理装置は、所定のタスク階層に基づいてさまざまな種類の割り込みを許可します。

複数のプログラム

最新のPC、スマートフォン、またはサーバーは、メモリ内にいくつかのプログラムを保持していますが、CPUは常にほんの一握りしか実行されません。 ほとんどがアイドル状態です。 プログラムには、ワードプロセッサ、スプレッドシート、電子メールなどのアプリケーション、次のようなユーティリティ機能が含まれます。 メモリモニターとプリントスプーラー、およびコンピューターのネットワークカード、キーボード、および スピーカー。 重要なプログラムがサービスを必要とする場合、CPUに割り込みを発行します。これにより、進行中の他の作業が停止され、差し迫ったタスクが処理されます。 CPUは、他のタスクよりも優先される場合にのみ割り込みを処理します。

今日のビデオ

ハードウェア割り込み

ハードドライブ、ネットワークカード、プリンタ、およびその他のデバイスは、CPUの注意を引くためにハードウェア割り込みを発行します。 たとえば、プログラムがハードドライブからデータを要求します。 このタスクには約10ミリ秒かかりますが、これはCPUにとって長い時間であり、CPUはその間に他の作業を実行します。 ハードドライブがデータを検出すると、ハードウェア割り込みを発行し、CPUに一時的に実行を停止して、要求元のプログラムにデータを配信するように指示します。

ソフトウェア割り込み

プログラムはソフトウェア割り込みを発行して、コンピュータのオペレーティングシステムを介して特別な要求を処理します。 たとえば、ワードプロセッサで、日付をページ見出しに貼り付けたいとします。 ワードプロセッサはソフトウェア割り込みを発行し、MicrosoftWindowsに日付を要求します。 Windowsがシステムカレンダーから日付を取得する間、ワードプロセッサは短時間待機します。 日付の準備ができると、Windowsは制御をワードプロセッサに戻します。 ソフトウェア割り込みの優先度は比較的低くなっています。 日付の取得中にCPUがハードドライブから要求を取得した場合、CPUは最初にハードドライブの割り込みを処理し、次に日付の取得を終了します。

CPUトラップ

オペレーティングシステムは、緊急事態のためにいくつかの非常に優先度の高い割り込みを予約します。 たとえば、プログラムのデータが破損し、クラッシュする可能性があります。 オペレーティングシステムはCPUトラップを発行し、プログラムを停止して画面に警告メッセージを表示し、何が起こったかを知らせます。 さらに極端な場合、オペレーティングシステム自体が深刻な問題を引き起こします。 診断メッセージを表示してすべての処理を停止する別のCPUトラップを発行します。