アポロ11を救った女性:マーガレット・ハミルトンの遺産

要約

この記事では、アポロ誘導コンピュータの先駆的な飛行中ソフトウェアを開発したチームを率いたソフトウェアエンジニアのマーガレット・ハミルトンの貢献について説明します。彼女がソフトウェアの能力を開発したこと、予期しないエラーを検出してリアルタイムで回復すること、そして緊急事態を警告するために航空士の通常のタスクを中断することができる優先表示を作成したことは、アポロ11ミッションの成功に重要な役割を果たしました。ハミルトンの貢献は、ジョン・F・ケネディ大統領の月面到達目標にインスピレーションを受けたエンジニアや科学者の仕事に不可欠であり、彼女の命を救う仕事はアポロ11にとどまらず、遥かに広がっていました。

目次

  • マーガレット・ハミルトンの早期の生活
  • アポロ誘導コンピュータチームへの参加
  • 飛行ソフトウェアの高いリスク
  • 非同期プログラミングと優先表示
  • アポロ11ミッション
  • ハミルトンの遺産と業績

マーガレット・ハミルトンの早期の生活

インドのパウレで生まれたマーガレット・ハミルトンは、常に彼女の周りの世界に興味を持っていました。大学で数学と哲学を学び、その後、カオス理論の新しい分野の研究を支援するソフトウェアを開発するために、マサチューセッツ工科大学(MIT)で研究職に就きました。MITで初めてコンピュータに出会いました。

アポロ誘導コンピュータチームへの参加

ハミルトンのソフトウェアエンジニアリングの専門知識は、著名なエンジニアであるチャールズ・ドレイパーの注目を引きました。ドレイパーとその400人のエンジニアグループは、初めてのコンパクトなデジタル飛行コンピュータ、アポロ誘導コンピュータ(AGC)を発明するためにNASAに協力しました。ハミルトンは、コマンドモジュールと月着陸船の搭載用飛行ソフトウェアを構築したチームを率いました。

飛行ソフトウェアの高いリスク

ハミルトンと彼女のチームの仕事は非常に高いリスクでした。人命がかかっていたため、すべてのプログラムは完璧でなければなりませんでした。マーガレットのソフトウェアは、予期しないエラーを素早く検出してリアルタイムで回復する必要がありました。しかし、このような適応型プログラムを構築することは困難でした。初期のソフトウェアは、特定の順序でジョブを処理するしかできませんでした。

非同期プログラミングと優先表示

この問題を解決するために、ハミルトンは彼女のプログラムを非同期に設計しました。つまり、ソフトウェアの重要なジョブが、それ以外のジョブを中断することができるようにしました。彼女のチームは、各タスクに固有の優先順位を割り当て、どんな驚きがあっても、各ジョブが正しい順序で正しい時間に発生するようにしました。このブレークスルーの後、マーガレットは、彼女のソフトウェアが航空士が非同期環境で作業するのを助けることができることに気づきました。彼女は、緊急事態を警告するために、航空士の通常のタスクを中断する優先表示を設計しました。

アポロ11ミッション

アポロ11ミッション中、月着陸前に緊急警報が点灯しました。バズ・オルド

上部へスクロール