令和2年度 10月 午前Ⅱ 問9
オペレーティングシステム
プリエンプティブの問題
リアルタイムOSで用いられる,タスクがデッドラインを必ず守るデッドラインスケジューリングでは,周期タスクを図のように次の四つのパラメタr,C,D,T(0<r+C≦D≦T)の組みで表現することができる。
周期タスクのパラメタ:
- 時間軸上に長さTの周期が二つ続けて並ぶ(周期の始まりから次の周期の始まりまでがT)
- 各周期の始まりからDだけ後が締切
- 各周期の始まりからrだけ後に「周期タスクの実行」が始まり,その長さがC
二つのタスクX,Yをr=0,D=Tという条件下で生成した場合,スケジュールが可能となるC,Dの組合せはどれか。ここで,タスクはX,Yの順に起動され,優先度はXの方が高い。また,スケジューリングはプリエンプティブ方式であり,OSのオーバヘッドは考慮しない。
選択肢は原典ではタスクX(C,D)・タスクY(C,D)の表。
- アタスクXのC:1 / タスクXのD:2 / タスクYのC:2 / タスクYのD:3
- イタスクXのC:1 / タスクXのD:2 / タスクYのC:2 / タスクYのD:4
- ウタスクXのC:2 / タスクXのD:3 / タスクYのC:2 / タスクYのD:3
- エタスクXのC:2 / タスクXのD:4 / タスクYのC:3 / タスクYのD:4
答えと解説を見る
✓ これが正解イタスクXのC:1 / タスクXのD:2 / タスクYのC:2 / タスクYのD:4
解説
XがC1・D2、YがC2・D4なら使用率がちょうど1で、締切を守れます。
r=0、D=Tなので、各タスクは周期の始まりに起動され、次の周期の始まりまでにCだけ実行を終えればよいことになります。まず、Cを周期で割った使用率の合計が1を超える組は、どう並べても時間が足りません。XとYの組では、両方C2・D3の組が約1.33、XがC2・D4でYがC3・D4の組が1.25となり、ここで外れます。XがC1・D2、YがC2・D4の組は1/2+2/4=1です。時刻0〜4を追うと、0〜1はX、1〜2はY、2で再び起動したXがプリエンプティブ方式でYを中断して2〜3を使い、3〜4でYが残りを終えます。Yは締切4までに2単位を実行でき、スケジュールは成り立ちます。使用率で外し、残りを時間軸で確かめる順に進めます。
ほかの選択肢はなぜ違うのか
- アタスクXのC:1 / タスクXのD:2 …:XがC1・D2、YがC2・D3の組は、使用率が1/2+2/3≒1.17で1を超えます。時間軸で追っても、0〜1にX、1〜2にY、2〜3に再びXが入るので、Yは締切3までに1単位しか実行できません。
- ウタスクXのC:2 / タスクXのD:3 …:両方がC2・D3の組は、使用率が2/3+2/3≒1.33です。優先度の高いXが0〜2を使うと、Yは2〜3の1単位しか実行できず、締切3までに必要な2単位を終えられません。
- エタスクXのC:2 / タスクXのD:4 …:XがC2・D4、YがC3・D4の組は、使用率が2/4+3/4=1.25です。周期4の間にXが2単位を使うと残りは2単位しかなく、Yに必要な3単位を締切4までに確保できません。
この問題の用語
- スケジュール作業の順序と日程を決めた計画のことをいいます。作業の前後関係から日程を組み立てるには、PERTが向いています。
出典:令和2年度 10月 エンベデッドシステムスペシャリスト試験 午前Ⅱ 問9
同じ用語が出る問題
- 平成30年度 春期 午前Ⅱ 問9:プリエンプティブに関する問題(スケジュール)
- 平成24年度 春期 午前Ⅱ 問3:CANに関する問題(スケジュール)
- 平成22年度 春期 午前Ⅱ 問22:構造化分析に関する問題(スケジュール)
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)