ディスパッチとは?でぃすぱっち
ディスパッチとは、実行可能状態(CPUさえ割り当てられればすぐ動ける状態)で順番を待っているタスクの中から次に動かす一つを選び、CPUの使用権を渡して実行状態(実際にCPUを使って動いている状態)へ移すこと。この処理を担うOSの部分をディスパッチャという。どれを選ぶかの基準はスケジューリング方式が決め、ディスパッチはその決定に従って実際に切り替える役割を受け持つ。
最終更新:2026-10-09
この語が出る過去問を解く →背景
CPUは同時に一つの命令列しか実行できないのに、利用者は複数の処理を並行して進めたい。そこでOSは短い時間で動かすタスクを次々と入れ替え、見かけ上は同時に動いているように見せている。入れ替えのたびに、直前まで動いていたタスクのレジスタ(CPUの中の一時置き場)の中身を退避し、次のタスクの状態を復元しなければならない。ディスパッチはこの切替えの実行部分を切り出した概念である。
具体例
Linuxでは、OSの中心部分(カーネル)にある、次に動かすものを選ぶ部分(スケジューラ)が次に走らせるプロセス(実行中のプログラム)を選び、実行中のものを入れ替える処理(コンテキストスイッチ)でCPUのレジスタを入れ替える。この入れ替えがディスパッチにあたり、一般的な設定では1秒間に数百回以上の頻度で起きている。
試験での引っ掛け
スケジューリングとディスパッチは別物である。優先順位やタイムスライス(1つのタスクが続けてCPUを使える持ち時間)に従ってどれを次に動かすか決めるのがスケジューリング、決まったタスクに実際にCPUを渡すのがディスパッチ。移した先が実行可能状態ではなく実行状態である点も入れ替えて問われる。
関連用語
出た過去問
問題文で直接問われたものと、解説の中で触れられたものが含まれます。
出典:平成28年度 秋期 基本情報技術者試験 午前 問18(IPA)解説で登場
マルチプログラミングにおけるプロセスの切替え手順を示した図において,OSの処理a~cとして,適切な組合せはどれか。
正解:a:実行状態の退避 b:プロセスの選択 c:実行状態の回復
要点:プロセス切替えは退避→次プロセス選択→回復の順
プロセス切替え(コンテキストスイッチ)では、まず割込みで中断したプロセスのレジスタなどの実行状態を保存し、次にディスパッチャが次に動かすプロセスを選び、最後に選んだプロセスの実行状態を復元してCPUを渡す。退避→選択→回復の順序になる。
出典:平成31年度 春期 基本情報技術者試験 午前 問16(IPA)
タスクのディスパッチの説明として、適切なものはどれか。
正解:実行可能なタスクに対してプロセッサの使用権を割り当てること
要点:ディスパッチは選ばれたタスクにCPUを実際に割り当てる
ディスパッチは、実行可能状態にあるタスクの中から次に動かすものを選び、実際にプロセッサの使用権を与えて実行状態へ移す操作である。どのタスクを選ぶかの方針を決めるのがスケジューリングで、その決定に従って実際にCPUを渡すのがディスパッチという分担になる。この処理を担うOSの機能をディスパッチャと呼ぶ。
出典・参考
公式シラバスの2 コンピュータシステム > 1. オペレーティングシステム > (4) タスク管理に掲載されている用語です。
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。