ラウンドロビン方式とは?らうんどろびんほうしき
ラウンドロビン方式とは、実行可能なタスクを待ち行列の先頭から取り出し、タイムクウォンタムと呼ぶ一定時間だけCPUを与えて、使い切ったら列の末尾へ戻すスケジューリング方式。同格のタスクが互いを締め出すことがなく、あるタスクが次に走るまでの間隔は待ち行列長とクウォンタムの積でおおよそ見積もれる。
最終更新:2026-10-06
この語が出る過去問を解く →背景
優先度だけでスケジューリングすると、同じ優先度のタスクが並んだときに順序が決まらず、先に走り出したタスクが自発的に待ちへ入るまで他が一切動けない。時分割で強制的に切り替える発想は汎用機のタイムシェアリングに由来し、RTOSでは同一優先度内の回し方として取り込まれた。組込みの設計判断としては、締切のある処理を優先度で分離し、締切を持たない同格の処理をこの方式で均等に回す、という切り分けになる。
具体例
FreeRTOSはティック割込みごとに同一優先度のタスクを切り替えるタイムスライスを標準で持ち、configUSE_TIME_SLICINGを0にすれば切替えを止められる。TOPPERS/ASPにはrot_rdqサービスコールがあり、指定した優先度の実行待ち行列を明示的に回転させて次のタスクへ譲れる。
試験での引っ掛け
クウォンタムを短くするほど応答が良くなるとは限らず、コンテキストスイッチの回数が増えて実効スループットは落ちる。またこの方式が与えるのはCPU時間の均等配分だけで、個々のタスクの締切は何も保証しない。期限を守らせたい処理は固定優先度やEDFへ寄せ、この方式は残りの処理に使う。
関連用語
出た過去問
出典:令和3年度 秋期 エンベデッドシステムスペシャリスト試験 午前Ⅱ 問7(IPA)
プロセスのスケジューリングに関する記述のうち、ラウンドロビン方式の説明として、適切なものはどれか。
正解:各プロセスを待ち行列に並んだ順にタイムクウォンタムずつ実行し、終了しないときは待ち行列の最後につなぐ。
要点:ラウンドロビンは一定時間ずつ順番に実行し末尾へ回す
ラウンドロビン方式は、実行可能なプロセスを待ち行列に並べ、先頭から一定時間(タイムクウォンタム)ずつCPUを割り当てる方式である。割り当てた時間内に終わらなければ実行を中断して待ち行列の末尾へ回すため、どのプロセスも公平に進行し、対話型処理の応答性を保てる。優先度を用いる方式とは考え方が異なる。
出典・参考
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。