IoT(モノのインターネット)市場が拡大する中で、エッジ側の機器制御で重要な役割を果たすことが期待されているリアルタイムOS(RTOS)について解説する本連載。第33回は、ドイツの人工衛星に欠かせないRTOS「RODOS」を紹介する。
「RODOS(Realtime Onboard Dependable Operating System)」はドイツのヴュルツブルク大学(University of Wurzburg)によって提供されているリアルタイムOS(RTOS)である。ライセンスはApache 2.0で、現在もきちんとメンテナンスされている(図1)。
RODOSの元となったのは、ドイツ航空宇宙センター(DLR:Deutsches Zentrum fur Luft- und Raumfahrt)が開発した「BOSS」と呼ばれるRTOSである。BOSSは宇宙衛星のシステムに利用するためのRTOSで、信頼性を高めるとともに認証や検証を容易に行えるように設計された。設計のポリシーは以下のようになっている。
これらの設計目標の下で作成されたカーネルのソースコードリストは数ページ程度とされ、また一部のコンポーネントは数学的に正しさの検証が行われている。BOSSの開発がいつスタートしたのか正確な時期は不明だが、1999年の時点で1年以上にわたって異状なく継続動作していると報告されているから、遅くても1997年ごろには開発がスタートしたものと思われる。このBOSSは、PowerPC、x86、そしてon-top-of-LINUX(Linux上のユーザータスクとして動作)の3種類の実装がある。最初の実装は48MHz動作のPowerPCプロセッサで、以下のような仕様を実現していた。
この最初の実装は、最終的にドイツのBIRD(Bi-Spectral Infrared Detection)という人工衛星の制御システムに採用されており、BIRDは2001年10月に打ち上げられている。
DLRはこれに続き、TET-1(Technologieerprobungstrager 1)という2012年に打ち上げられた人工衛星や、2016年に打ち上げられたBiROS(Bi-spectral InfraRed Optical System)という人工衛星のシステムも手掛けているが、これらに利用されているのがBOSSをベースにしたRODOSである。
ただし、RODOSの開発はDLRのみならずヴュルツブルク大学の航空宇宙情報学科(Aerospace Information Technology)も協力しており、それもあって現在は、RODOSの公式な配布元はヴュルツブルク大学となっている。
Copyright © ITmedia, Inc. All Rights Reserved.