DSEIの話が割り込んできてしまったが、今回から艦載コンピュータの話に戻る。以前は主としてハードウェアの話だったが、今回はソフトウェアの話を取り上げる。いまさらだが「コンピュータ、ソフトなければただの箱」だから、ソフトウェアの開発・メンテナンス・改良をいかにして効率良く行うか、という話は欠かせない。→連載「軍事とIT」のこれまでの回はこちらを参照。
TSCEのソフトウェア環境を確認
第491回、ズムウォルト級駆逐艦のTSCE(Total Ship Computing Environment)を引き合いに出したので、まずは、そのTSCEにおけるソフトウェア実行環境を見ていく。
その際にも述べたように、TSCEは戦闘システムや艦制御など、多種多様な機能をまとめてカバーしている。それらの機能を適切に動かすためには、それぞれ専用のソフトウェアが要る。では、それを走らせるためのコンピュータ環境はどうするか。それの概念を示したのが下の図。
ハードウェアがあって、そこでオペレーティング・システムが走る。これは、われわれが使っているパソコンやスマートフォンと変わらない。その上にミドルウェアとインフラストラクチャ・サービスを載せており、ここまでをTSCE-I(Total Ship Computing Environment - Infrastructure)と称する。その上で、指揮管制、通信、戦闘などの機能を司るアプリケーション・ソフトウェアが走る。
ミドルウェアを挟む形で実行環境を構築しているところは、実はイージス戦闘システムも同じだ。こうすることで、ハードウェアとソフトウェアを分離しやすくしている。
単純に考えれば、「間に介在する要素が増えれば、実行時のオーバーヘッドが増えるのではないか?」となる。とはいえ、ちょっと乱暴な言い方をすれば、それは処理能力で押し切れる種類の話で、ムーアの法則がなんとかしてくれる。オーバーヘッドが増える可能性があってもミドルウェアを介する方が利点が大きいから、そうしているわけだ。