Voyagerミッションのコード開発プロセス?


29

Voyager 1は2012年8月に星間空間に到達し、現存する最も遠い人工物です。1977年に双子の宇宙船Voyager 2の直後に打ち上げられたVoyager 1は、木星系と土星系を探索し、新月、活火山、外部太陽系に関する豊富なデータを発見しました。

Voyager 1および2は、176年に1回しか発生しない希少な惑星配列を利用するように設計されており、歴史上最もよく旅行された宇宙船のままです。両方の宇宙船には、ゴールデンレコードと呼ばれる一種のタイムカプセルが搭載されています。これは、私たちの世界の物語を地球外生物に描写するために選択された音と画像を含む12インチの金メッキ銅ディスクです。

私は、この任務のためにソフトウェアを構築していた人々の大部分が現在退職していると思いますが、過去35年間でプログラミング、プログラミング言語はこれまでに進歩しました。

35年後、ボイジャーは星間空間に到達しました。何行のコードがあり、どの言語で書かれていますか?このミッションの背後にある開発プロセスは何でしたか(それはまだアクティブです)。

それで、このミッションでのコードのより大きな計画は何でしたか、そしてどの言語でコードベースが書かれていますか?



10
幸いなことに、最近ではこのようなものをインターネット上で見つけるのは非常に簡単です。Popularmechanics.com/space/a17991/…をお読みください
ロバートハーヴェイ

3
過去35年間のプログラミングで、プログラミング言語はこれまでに進化しましたはい、しかし、Voyagerとその同類に使用される言語まではありませんでした:-)
ハイパフォーマンスマーク

「ポピュラーメカニクス」リンクの終わり近くで、「...宇宙船を動かし続けるのに十分なアセンブリ言語の基礎があります。」
dbasnett

期間に基づくアセンブリ言語である可能性が非常に高く、また、今日使用されている非常に苦痛で高価なプロセスよりも、ズボンを腰から撃ち、はるかに多くの座席であった可能性があります。
old_timer

回答:


19

(編集:2017年12月7日、1年後、信頼できる答えを見つけました)NASA宇宙ミッションのソフトウェア開発に関する記事。 https://www.nasa.gov/pdf/418878main_FSWC_Final_Report.pdf 31ページの次の表は、コードの行数の対数増加に対する適切な適合性を示すグラフです。 )

  • 1969マリナー-6(30)
  • 1975バイキング(5K)
  • 1977ボイジャー(3K)
  • 1989ガリレオ(8K)
  • 1990カッシーニ(120K)
  • 1997パスファインダー(175K)
  • 1999 DS1(349K)
  • 2003 SIRTF / Spitzer(554K)
  • 2004 MER(555K)
  • 2005 MRO(545K)

これはもともと最終的な答えを探すための質問であったため、次の推定を行いました。

以下の投稿によると、Apollo 11やその他のオープンソースのNASAのさまざまなものに利用できるコードがありますが、プローブのソースは残念ながら欠けているようです:

https://voat.co/v/programming/comments/306663

私はグーグルで調べましたが、大部分がF77で書き直されており、すべてがうまくいけば2024年まで星間空間のデータを送信できる可能性があるという事実を超えて、決定的なものはまだ見つかりませんでした。

これは興味をそそるほど近いです:http : //history.nasa.gov/computers/Ch6-2.html

フライトデータシステムで使用されるメモリの4Kバンクの「下部」のみがコード用です。これはおそらくVoyagerの3台のコンピューターの中で最も複雑なため、ここから上限を取得できます。したがって、命令サイズが1バイトの命令用の2kバイトのメモリは、およそ2000のアセンブリ命令になります。または、おそらく1000行のFortranコード。再プログラミングのために3倍します)、元のアセンブリの3000ラインの大まかな上限が得られます。科学的でも厳密でもありませんが、私が理解できる最高のものです。

そして、最新のニュースとして、アランラッサーは、ボイジャーミッションの制御および分析ソフトウェアのソースコードに関する情報の自由法を制定し、コードが(C)Caltechであり、FOIAリクエストの範囲を超えていることを明らかにしました。そのソースコードを研究するためのさらなる努力を指示することができます。

また、アランラッサーの関連するFOIAリクエストを通じて、ボイジャーのJPL / Caltech契約は FOIAの力を超えていることがわかります。これは、NASAがITセキュリティを侵害する傾向があると契約が判断しているためです。


アセンブリ命令ごとのバイト数または行ごとの命令の統計情報が優れている場合は、追加してください。過去に読んだことのある表現力に関する記事を見つけることができませんでした
...-ベンペン

14

Wiredのこの記事では、コードがFortran 5で記述され、Fortran 77に移植され、一部の要素がCのバージョンになっていることを明らかにしています。

宇宙船のオリジナルの制御および解析ソフトウェアは、Fortran 5(後でFortran 77に移植された)で作成されました。一部のソフトウェアはFortranのままですが、他の部分はやや現代的なCに移植されています。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.