組込み・ファームウェア

組込み機器でRTOS(リアルタイムOS)を使う主な目的はどれか。

  1. A画面に美しいウィンドウを表示する
  2. B処理の平均の速さを、パソコンのOSより必ず速くする
  3. C複数の処理(タスク)を優先度に従って切り替え、決められた時間内に応答できるようにする
答えと解説を見る

正解:C. 複数の処理(タスク)を優先度に従って切り替え、決められた時間内に応答できるようにする

RTOSは、処理をタスクに分け、優先度の高いタスクが実行できるようになったらすぐに切り替えて動かします。モーターの制御や通信の応答のように、遅れると困る処理を決められた時間内に確実に行えるようにすることが目的です。タスク間でデータを渡すキューや、資源を守るミューテックス、時間を待つ機能なども用意されています。FreeRTOSやZephyr、μITRONなどがあります。

  • A. 画面の表示は主な目的ではありません。
  • B. 平均の速さより、最悪の場合の時間を保証することが大切です。
  • C. 正しい。応答の時間を予測しやすくすることが大切です。
この分野を解く 分野ページへ

組込み・ファームウェアのほかの問題

  1. プリエンプティブなRTOSで、優先度の低いタスクの実行中に、優先度の高いタスクが待っていたデータを受け取って実行できる状態になった。一般にどうなるか。
  2. RTOSで起こる優先度逆転の説明として正しいものはどれか。
  3. 優先度逆転を防ぐために使われる「優先度継承」の考え方として正しいものはどれか。
  4. RTOSで、センサを読むタスクから表示するタスクへデータを渡すのに、キュー(メッセージキュー)を使う利点として正しいものはどれか。
  5. ハードリアルタイムとソフトリアルタイムの違いとして正しいものはどれか。