コンテキストスイッチ 【context switching】
概要
コンテキストスイッチ(context switching)とは、コンピュータの処理装置(CPU)が現在実行している処理の流れ(プロセス、スレッド)を一時停止し、別のものに切り替えて実行を再開すること。あるプロセスを実行している最中に、処理を中断してCPU内部のレジスタの状態などを特定のメモリ領域などに保存し、同じように途中で中断されていた別のプロセスの実行状態を読み込んで処理を再開する。この一連の切り替え処理のことをコンテキストスイッチという。
一台のCPUで極めて短い一定の時間ごとにコンテキストスイッチを行い、実行するプロセスを自動的に切り替えることにより、複数のプロセスを並行に実行することができる。このような処理方式を「マルチタスク」(multitasking)という。
また、実行中のプログラムを中断して強制的に指定された処理を実行する「割り込み」処理や、実行権限の異なるユーザーモードとカーネルモード(特権モード)の切り替えなどの際にも、コンテキストスイッチによりプログラムの中断や再開を行っている。
(2023.4.15更新)