タスクとは?たすく
タスクとは、RTOSがスケジューリングの単位として管理する実行の流れで、固有の優先度・スタック・タスク制御ブロック(TCB)を持つ。状態は実行・実行可能・待ち・休止などに分かれ、サービスコールの発行と割込みを契機に遷移する。ESでは機能をいくつのタスクへ割るか、優先度をどう積むかというタスク構成の設計判断そのものが問われる。
最終更新:2026-10-06
この語が出る過去問を解く →背景
機能が少ないうちは、メインループと割込みハンドラだけで足りていた。しかし1台の製品に通信・表示・ログ・自己診断が同居し、それぞれ許される遅れが桁で違ってくると、単一ループでは締切の緩い処理が厳しい処理を待たせてしまう。締切ごとに実行の流れを分け、優先度という一次元の物差しで並べ替え可能にしたのがタスクである。シラバスも機能要件を満足するタスク構成を設計する能力を明記しており、粒度と優先度の根拠がそのまま答案の中身になる。
具体例
TOPPERS/ASPやFreeRTOSでは、cre_tsk/xTaskCreateでタスクごとにスタックサイズと優先度を与える。モータ電流の制御周期100マイクロ秒のタスクを最高優先度に、LCD描画やログ書き出しを最低優先度に置き、後者が前者を待たせない構成にする。
試験での引っ掛け
実行可能状態はレディキューに並んでいるだけでCPUを得ていない。資源を待つ待ち状態、まだ起動されていない休止状態と区別する。タスク数を増やせば並行性が上がるのではなく、増えるのはスタック消費とコンテキストスイッチの回数。優先度の高いタスクが低いタスクのロックで止まる優先度逆転も、別論点として並べられる。
関連用語
出た過去問
出典:平成28年度 春期 エンベデッドシステムスペシャリスト試験 午前Ⅱ 問7(IPA)
リアルタイムシステムにおいて、アプリケーションタスクの要求によって入出力を行うデバイスドライバのタスク部が、要求された処理が完了したときに行う通知処理はどれか。
正解:イベントフラグを使って入出力要求元のタスクに入出力完了を通知する。
要点:完了通知はOSでなく要求元タスクへ同期機能で行う
デバイスドライバのタスク部は、割込みハンドラから処理完了を受け取ったあと、その事実を要求元のアプリケーションタスクへ知らせる必要がある。リアルタイムOSではイベントフラグやセマフォといった同期機能を使い、完了を待って待ち状態になっているタスクを実行可能状態へ戻す。通知の相手はOSやハードウェアではなく、あくまで待っているタスクである。
出典:平成28年度 春期 エンベデッドシステムスペシャリスト試験 午前Ⅱ 問9(IPA)
リアルタイムOSを用いたシステムにおいて、タスクAの優先度が最も低いとする。実行状態又は実行可能状態であるタスクがタスクAだけであるとき、電力の消費を抑えるため…
正解:休止命令を実行して割込みを待つ。
要点:アイドル時は休止命令で割込み待ちにして省電力化する
他に走らせるべきタスクがないとき、最低優先度のタスクが空ループを回し続けると、プロセッサが全力で動き続けて電力を無駄に消費する。この場合は休止(低消費電力)命令を実行してプロセッサを止め、割込みが入ったら復帰する形にすればよい。割込みで復帰できるので応答性を損なわずに消費電力だけ下げられる。
出典:平成28年度 春期 エンベデッドシステムスペシャリスト試験 午前Ⅱ 問10(IPA)
リアルタイムOSにおいて、タスクA〜Eの発生時刻、処理時間及び優先度が次のように定められている場合、タスクCの終了時刻はタスクAが発生してから何ミリ秒後となるか…
正解:35
要点:高優先度タスクの発生ごとに実行が中断され完了が遅れる
優先度に基づくプリエンプティブなスケジューリングでは、より優先度の高いタスクが発生した時点で実行中のタスクが中断される。Cは自分より高いBの処理が終わってから開始し、途中で最優先のEが発生した時点で中断され、Eの処理が終わってから残りを実行する。合計すると、Cが完了するのはAの発生から35ミリ秒後になる。
出典:平成30年度 春期 エンベデッドシステムスペシャリスト試験 午前Ⅱ 問7(IPA)
スレッドとプロセスに関する記述のうち、適切なものはどれか。
正解:同一アドレス空間に含まれているスレッド間の通信は、プロセス間の通信と比較して効率的に行われる。
要点:スレッドは空間共有ゆえプロセス間より通信が効率的
スレッドは1つのプロセス内に複数存在し、コード領域やデータ領域などのアドレス空間を共有する(スタックとコンテキストはスレッドごとに別々にもつ)。アドレス空間が共通なので、スレッド間ではメモリ上の変数を直接読み書きしてデータをやり取りでき、カーネルを介するプロセス間通信より効率がよい。切替え時に退避する情報も少なく、コンテキストスイッチも軽い。
出典:平成30年度 春期 エンベデッドシステムスペシャリスト試験 午前Ⅱ 問9(IPA)
リアルタイムOSで用いられる、タスクがデッドラインを必ず守るデッドラインスケジューリングでは、周期タスクを図のように次の四つのパラメタr, C, D, T(0<…
正解:タスクX: C=1, D=2/タスクY: C=2, D=4
要点:周期タスクはC/Dの総和が1以下でなければ成立しない
r=0かつD=Tなので各タスクの周期はデッドラインに等しく、CPU使用率はC/Dの和で見積もれる。使用率が1を超える組合せはどう並べてもデッドラインを守れないため除外され、残るのはX:C=1,D=2とY:C=2,D=4の組合せ(1/2+2/4=1)である。実際、優先度の高いXが各周期の先頭で1単位実行し、残りの時間でYが2単位を確保できるので、周期4の中で両方が間に合う。
出典・参考
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。