リアルタイムOSに関する世界観です。Linuxカーネルも参照のこと。
組み込みなど、小さなハードウェアに組み込まれたRTOSでは、リアルタイムに反応することが求められる。
RTOSでは、イベントが発火してからCPUで処理が行われるまでの時間を必ず守る(決められた時間内に処理される)。
そのために「優先順位」(レイテンシ)を使い、優先度が高いタスクの処理は、それよりも低いタスクの処理をすべて無視できる。
Linuxではrt(Real Time)関係の開発が行われている。RT-Preemptパッチを当てることで、完全にプリエンティブルなLinuxカーネルを使用できる。
RT-LinuxはRaspberryPiなどでも試すことができる。
Linuxのカーネルにリアルタイム機能を追加した、リアルタイムでマイクロカーネルなLinux。
現在誠意開発中のReal-Time LinuxのWiki。
組み込み用Linux。
μClinuxは組み込み向けのLinuxで、MMUがない環境でも動作する。現在はメインラインカーネルに統合されており(統合後もパッチなどは開発されてきた)、NOMMUオプションで利用できる。
libcも参照のこと。
2025.12.21
組み込みOSは、汎用OSと異なり、メモリ常駐型で動作することが多い。
汎用OSのように、起動時にハードディスクからOSとプログラムを読み込むのではなく、主に書き換え不可能なROMを用いて、メモリに常に常駐した形で動作する。
ただし、一部の場合にのみ、書き換え可能なRAMを使うことがある。
後日注記:基本的に、汎用OSは起動時にハードディスクから読み出されますが、組み込みOSはROMを使ってオンメモリで動作します。このため高速に立ち上がりますが、変更はできません。
(放送大学「コンピュータの動作と管理 ('17)」を参考に執筆しました。)
2023.05.27
2025.08.18編集
商用のリアルタイムUnix。マイクロカーネルで、カーネルの機能を動的にサーバーを停止するだけで変えられる。
ソフトウェアの誤動作が致命的な結果となるような機器に多く使われており、スペースシャトルのロボットアームにも採用されている。
Wind River社による組み込み用のリアルタイムOS。
信頼性が非常に重要視される分野で多く使われている実績を持ち、NASAの火星探査機にも使われている。
地球と火星の間でのソフトウェアアップデートにも成功。
(おうちで学べるプログラミングのきほんを参考に執筆しました。)
ハードウェア制御用の言語については、以下のような記事を参照のこと。CやC++のほかAIなどではPythonも用いられる。
2026.01.29
組み込み機器の問題は、ICを入れるせいで、機械がどんどん複雑で難しくなるということです。
最近のハイテク機器には、Javaや組み込み向けのLinuxを始めとするIT技術が多く使われていますが、そのせいで、使い方がどんどん複雑で難しくなっています。
たとえば、洗濯機、DVDレコーダー、あるいはお風呂の湯沸かし器など、端末の操作やエラーが出た時の対処法などを、取扱説明書をよく読んで、理解しなければ使えなくなってしまっています。
また、それよりも酷いのは、パソコンのWebブラウザやスマホアプリで操作する決済サービスやECサイト、パソコンではありませんがATMなどの金融系の端末などです。パソコンやスマホの操作ができることが前提であり、パソコンやスマホを使うことができない人のことは最初から考えられていないのです。
スマホアプリは、きちんとすべての使用パターンを想定しているとは言い難いアプリもあります。SMS認証やメール認証などで、ログイン画面を一時的に認証コードを見るために画面を切り替えて、再度戻ろうとするとログイン画面が消えて最初からになったりします。このような際には、面倒でもパソコンで登録することが確実です。
スマホアプリを入れるだけでも面倒ですが、IDとパスワードを登録してアカウントを作れと要求されることもあります。IDとパスワードを忘れると、二度とログインできなくなってしまうこともあります。本当に、パソコンはユーザーの利便性を高めるためにあるのか、と問い正したくなります。
2026.05.19-20
マイクロカーネルOSについて詳しくはMachなどを参照のこと。
Java組み込みも参照のこと。