エンベデッドシステムスペシャリスト暗記無料で始める

マルチスレッドとは?まるちすれっど

マルチスレッドとは、1つのプロセス内に複数の実行の流れを持たせ、メモリ空間や資源を共有したまま並行に進める方式。生成と切替えの負荷がプロセスより軽い代わりに、共有データの競合と同期の設計がすべて作り手の責任になる。メモリ保護のない環境で動くRTOSのタスクも、この形に近い。

最終更新:2026-10-06

試験情報

エンベデッドシステムスペシャリスト試験の頻出用語/午前II

エンベデッドSPを最短で暗記・合格する →

背景

入出力の完了を待つ間、CPUを遊ばせたままにしたくない。待ちと計算を重ねるために、1つのプログラムを複数の流れへ割ったのが出発点。組込みではMMUを持たないMCU上で全タスクが同じ空間を共有するため、軽い切替えという利点と、1本の暴走が全体を壊すという欠点がそのまま出る。タスク分割の粒度とスタック見積りが設計判断になる。

具体例

TOPPERS/ASPやFreeRTOSでは、各タスクにスタックを個別に割り当て、優先度でプリエンプトする。センサ取得と通信を別タスクに分ければ通信待ちの間も取得周期を守れるが、タスク数だけスタックがRAMを食うため、SRAM 128KBのMCUでは分割数そのものが資源制約になる。

試験での引っ掛け

共有するのがスレッド、独立しているのがプロセス。だから一方の異常が他方へ波及しやすいのはスレッド側。並行(時分割で交互)と並列(複数コアで同時)も別物で、スレッド化すれば速くなるとは限らない。高優先度のタスクが低優先度の握るロックで待たされる優先度逆転も、この共有が生む問題。

関連用語

解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。

エンベデッドSPを最短で暗記・合格する →

試験での特徴
  • 分野:午前II
  • 共有するのがスレッド、独立しているのがプロセス。