コンテキストスイッチとは
コンテキストスイッチとは、実行中のプログラムを一旦止め、その時点の状態(CPUレジスタやプログラムカウンタ、スタックなど)をメモリに保存し、別のプログラムの状態を復元して続きから動かす処理です。OSが管理し、CPUがどの処理を実行するかを入れ替えます。
1台のCPUでも、短い時間ごとに切り替えることで、複数の処理が同時に進むように見えます。これがマルチタスクです。さらに、割り込みの発生や、システムコールでユーザーモードとカーネルモードを行き来する場面でも、中断と再開が同じ仕組みで行われます。
切り替えには保存と復元が必要なため、わずかな時間と資源の負担(オーバーヘッド)が発生します。それでも、応答性を高め、重要な処理へCPU時間を振り向け、公平に順番を与えられる点が利点です。限られたCPUを多くの処理で分け合うための基盤と覚えておくと理解しやすいでしょう。
関連用語
PR

