F-35戦闘機も採用する「LynxOS」はRTOSを超えたRTOSを目指すリアルタイムOS列伝(30)(3/3 ページ)

» 2023年01月11日 08時00分 公開
[大原雄介MONOist]
前のページへ 1|2|3       

RTOSの枠を超えるような大規模なリアルタイムシステムに対応する

 さて話をLynxOSに戻す。以下に、LynxOSの特徴を幾つか挙げてみよう。

  • カーネルはモノリシック構成。完全プリエンプティブになっている。マルチタスク/マルチスレッド構成で、タスク数に制限はない。LynxOS 7.0からはSMP(対称型マルチプロセッシング)もサポートする
  • スケジューリングはFIFO/Priority/Round-robin/Non-preemptiveの4つをサポート。Priorityは256レベル用意される
  • メモリ制御はMMU(メモリ管理ユニット)をフルサポートし、ページ単位での制御が可能。必要ならデマンドページングを利用した仮想メモリもサポートする
  • POSIX.1-2008(2015 Edition)をフルサポート。またUNIX System VのAPIも提供される
  • Thread間通信としてはMessage Queue/Semaphore/Shared Memory/Socket/Signal/Pipe/Mutex/Condition Valueが用意される。このうちMessage Queue/Semaphore/Shared Memoryに関しては、POSIX APIとSystem V APIの両方が提供される
  • ハードリアルタイムに対応(これに関してLynx Software Technologiesは特許を保有している)
  • Linuxアプリケーション向けのABI(Application Binary Interface)を利用可能
  • タイマ解像度を任意に設定可能
  • ディスクレス構成に向けたKDI(Kernel Downloadable Image)をサポート
  • 最大サポートメモリ容量は2GB

 間違いなくRTOSではあるのだが、ページングをサポートしながらハードリアルタイムを可能にしているあたりがあまり普通ではない。これはネットワークサポートもそうで、FreeBSD 8.3由来のTCP/IPのフルスタックに加え、IPv4/IPv6サポートやIPSec/IKE/VPN、QoSなどをサポートし、ファイアウォールまで用意している。何というか、ハードウェア的にはLinuxを動かせるようなターゲット上で、ハードリアルタイムを動かせるようにした、という通常のRTOSとは全く異なる構成である。

 ターゲットデバイスも、x86(32ビット/64ビット)とPowerPC(FreescaleのQorIQ)の他、さらに64ビットArmプロセッサもサポートしている。何で今さらPowerPC? と思われるかもしれないが、航空宇宙分野ではPowerPCがまだ広く使われているためである。Freescaleというか現NXP Semiconductorsは航空宇宙向けのPowerPC製品は提供していないが、同社からライセンスを受けたTeledyne e2vというメーカーが航空宇宙向けに耐放射線強化や動作温度範囲拡充(−55〜125℃)を施したQorIQシリーズを提供しており、これまでSPARCベース(厳密にはSPARC V8に基づいたLEONという独自プロセッサ)が使われていた市場で現在広く採用され始めている。

 さらにこの市場を後追いしているのがRISC-Vだ。LEONを提供していたGaisler Researchは、現在NOEL-VというRISC-Vベースプロセッサの提供を開始しているものの、まだPowerPCのシェアは大きい。なお、LynxOSにおけるRISC-Vへの対応については、FAQによれば「現時点では対応していないが、顧客からの要望をヒアリング中」というステータスになっている。

 つまり、通常のRTOSの枠を超えるような大規模なリアルタイムシステムに対応することを目指したのがLynxOSである。航空機のアビオニクスなどその最たる例だろうし、他にも軍用レーダーやミサイルの制御システムなどもLynxOSのターゲットになっている。競合があまりないが故に現在も広く使われているというわけだ。

前のページへ 1|2|3       

Copyright © ITmedia, Inc. All Rights Reserved.