2021年12月に打ち上げられ、2022年7月から運用が開始され、既に数多くの驚くべき成果を上げているジェイムズ・ウェッブ宇宙望遠鏡は、まさに人類の叡智の結晶とでも言うべきだが、その科学機器を管理するソフトウェアは、なんと“JavaScript”で書かれていると言うことだ。
JavaScriptと言えば、Webサイトの制御に使われるスクリプト言語で、簡単ではあるが処理速度に劣ることから、科学技術機器の制御に使われているイメージはないのではないだろうか。
ジェイムズ・ウェッブ宇宙望遠鏡(JWST)の4つの装置、近赤外線カメラ(NIRCam)、近赤外線分光器(NIRSpec)、中間赤外線装置(MIRI)、精密誘導センサー/近赤外線撮像・分光器(FGS/NIRISS)を格納した統合科学観測モジュール(ISIM)と呼ばれるモジュールについての説明文書が、NASAのホームページで公開された。それによると、ISIMのソフトウェアは、「スクリプト・プロセッサ・タスク(SP)」によって制御されており、コマンドを受けてJavaScriptで書かれたスクリプトを実行するようになっている。
JWSTには、特定のタスクを実行するためのスクリプトがあらかじめたくさん用意されており、地上の科学者はそれを実行するように指示することができる。例えば、画像取得処理などがこれにあたる。
スクリプトは「スクリプトプロセッサ」と呼ばれるプログラムによって解釈され、スクリプトが要求する内容に基づいて、他のアプリケーションやシステムに接続される。これは例えるならば、マネージャーがタスクのリストを与えられて、それをチームに委任しているようなものだ。
そして、スクリプトの作成には、2003年に発売されたNombas ScriptEase 5.00eを使用しているとのことだ。
なぜ最新鋭の望遠鏡にそんな古い技術が使われているのかと疑問に思われるかも知れないが、JWSTは1989年に設計が開始され、2004年に建設が開始された。ScriptEase 5は2002年に発表されたので、当時としてはベストな選択肢だったのだろう。そして、なぜJavaScriptが選ばれたのかについて、NASAは「望遠鏡の操作に関する可視性、制御性、柔軟性が向上し、観測装置の操作の影響や微妙な点を学習しながら簡単にスクリプトを編集できるから」と説明している。
ちなみに、スクリプトプロセッサはC++で書かれており、宇宙船のプログラミングに適した言語であることは間違いない。
また、JWSTに搭載されているSSDの容量は68GBであると言う事も以前報じられたが、プロジェクト自体が20年以上もかけて達成された事もあり、最終的に現在は陳腐化した技術が取り入れられているのは仕方のないことだろう。
問題は、どれ程の成果を上げられるかだが、既に届けられた画像を見る限り、JWSTが我々の想像を超える宇宙の姿を今後も見せてくれるであろうことは間違いないだろう。
コメントを残す