実行可能状態とは?じっこうかのうじょうたい
実行可能状態とは、タスクがCPU以外に必要なものをすべて揃え、順番が回ってくればすぐ実行できる状態。生成された直後、実行状態から時間切れで降ろされた直後、待ち状態の要因が解消した直後にこの状態へ入り、ディスパッチャ(次に動かすタスクを選んでCPUを渡すOSの部分)に選ばれると実行状態へ移る。タスクの3状態のひとつである。
最終更新:2026-10-09
この語が出る過去問を解く →背景
CPUは同時に1つのタスクしか動かせないのに、実行したいタスクは同時にいくつも存在する。「動いている/動いていない」の2つに分けるだけでは、入出力の完了を待っていて動かしようがないタスクと、CPUさえ空けばすぐ動けるタスクを区別できず、次に誰を動かすかを決められない。選ぶ対象となる待機列を切り出したのが実行可能状態で、これがあってスケジューリングが成り立つ。
具体例
WindowsやLinuxでは、この状態のタスクを実行可能キューに並べ、優先度やタイムスライスの規則に従って1つを選ぶ。ラウンドロビン方式では、決められた時間を使い切ったタスクを実行状態から実行可能状態へ戻し、列の最後尾へ回す。
試験での引っ掛け
待ち状態との違いが問われる。入出力の完了などCPU以外の要因で進めないのが待ち状態、CPUの空きだけを待つのが実行可能状態である。待ち状態から実行状態へ直接移ることはなく、必ず実行可能状態を経由する。実行状態から実行可能状態へ降ろされるのがプリエンプションである。
関連用語
出た過去問
問題文で直接問われたものと、解説の中で触れられたものが含まれます。
出典:平成29年度 秋期 基本情報技術者試験 午前 問18(IPA)
優先度に基づくプリエンプティブなスケジューリングを行うリアルタイムOSで、二つのタスクA, Bをスケジューリングする。Aの方がBよりも優先度が高い場合にリアルタ…
正解:Bの実行中にAに起動がかかると、Bを実行可能状態にしてAを実行する。
要点:プリエンプションで奪われたタスクは待ち状態でなく実行可能状態へ
プリエンプティブなスケジューリングでは、実行中のタスクより優先度の高いタスクが実行可能になった時点で、OSが実行中のタスクからCPUを取り上げて切り替える。取り上げられたタスクはCPUさえ空けばすぐ動ける状態なので「実行可能状態(ready)」へ移る。入出力完了などの事象を待つ「待ち状態」へは移らない点が要点である。
出典:平成30年度 秋期 基本情報技術者試験 午前 問16(IPA)
三つのタスクの優先度と,各タスクを単独で実行した場合のCPUと入出力(I/O)装置の動作順序と処理時間は,表のとおりである。優先度方式のタスクスケジューリングを…
正解:3
要点:優先度方式のCPU遊休は全タスクがI/O中の区間を足す
優先度順に割り当てると、CPUは0〜3で高、3〜5で中、5〜6で低を処理し、6〜8は全タスクが入出力中で遊休となる。8で高が戻り8〜10を使い、10〜11が再び遊休、11で中と低が戻って11〜14で残りを処理する。遊休は2ミリ秒と1ミリ秒の合計3ミリ秒である。
出典:平成30年度 春期 基本情報技術者試験 午前 問16(IPA)
三つのタスクA~Cの優先度と、各タスクを単独で実行した場合のCPUと入出力(I/O)装置の動作順序と処理時間は、表のとおりである。A~Cが同時に実行可能状態にな…
正解:図ウ(タイムチャート)
要点:優先度方式では高優先タスクが実行可能になった時点で割込み取得する
優先度順に割り当てると、0〜2ミリ秒は最優先のAがCPUを使い、AがI/Oに移った2〜4ミリ秒はBがCPUを使う。4ミリ秒でAのI/Oが終わって実行可能になるとBは追い出され、Aが4〜6ミリ秒でCPUを使って終了する。残り1ミリ秒あるBが6〜7ミリ秒でCPUを使ってI/Oへ移り、ようやくCが7ミリ秒からCPUを得て9ミリ秒でI/Oに入る。3ミリ秒以降を切り取ると、この動きに一致するタイムチャートが正解になる。
出典:令和元年度 秋期 基本情報技術者試験 午前 問18(IPA)
優先度に基づくプリエンプティブなスケジューリングを行うリアルタイムOSで、二つのタスクA、Bをスケジューリングする。Aの方がBよりも優先度が高い場合にリアルタイ…
正解:Bの実行中にAに起動がかかると、Bを実行可能状態にしてAを実行する。
要点:プリエンプションで奪われたタスクは待ちでなく実行可能状態へ
プリエンプティブ方式では、実行中のタスクより優先度の高いタスクが実行可能になった時点でCPUが強制的に奪われる。奪われた側は入出力などの完了を待っているわけではないので「待ち状態」ではなく「実行可能状態」に移り、CPUが空けばすぐ再開できる。優先度の低いタスクが起動しても実行中のタスクは中断されない。
出典:平成31年度 春期 基本情報技術者試験 午前 問16(IPA)解説で登場
タスクのディスパッチの説明として、適切なものはどれか。
正解:実行可能なタスクに対してプロセッサの使用権を割り当てること
要点:ディスパッチは選ばれたタスクにCPUを実際に割り当てる
ディスパッチは、実行可能状態にあるタスクの中から次に動かすものを選び、実際にプロセッサの使用権を与えて実行状態へ移す操作である。どのタスクを選ぶかの方針を決めるのがスケジューリングで、その決定に従って実際にCPUを渡すのがディスパッチという分担になる。この処理を担うOSの機能をディスパッチャと呼ぶ。
出典・参考
公式シラバスの2 コンピュータシステム > 1. オペレーティングシステム > (4) タスク管理に掲載されている用語です。
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。