本文详细介绍了阿波罗11号制导计算机 (AGC) 源代码的历史,重点关注其最初的开发、保存工作以及从实体纸质清单到我们今天所见的数字存储库的历程。有关开发原始软件的团队信息,请参见原始开发团队。
阿波罗制导计算机 (AGC) 源代码存储库包含1969年7月历史性阿波罗11号任务中使用的两个主要软件组件:指令舱 (CM) 的Colossus 2A和登月舱 (LM) 的Luminary 1A。
来源: README.md85 README.md100-102
该软件由麻省理工学院(MIT)的仪器实验室在NASA的指导下开发。AGC程序是在DSR项目55-23870下编制的,该项目由NASA载人航天器中心通过与MIT仪器实验室签订的NAS 9-4065合同赞助。
该程序于1969年3月28日由关键人员正式签核,距离历史性的阿波罗11号发射仅数月。
| 提交人 | 角色 | 日期 |
|---|---|---|
| Margaret H. Hamilton | Colossus编程负责人,阿波罗制导与导航 | 1969年3月28日 |
| 批准人 | 角色 | 日期 |
|---|---|---|
| Daniel J. Lickly | 任务程序开发总监 | 1969年3月28日 |
| Fred H. Martin | Colossus 项目经理 | 1969年3月28日 |
| Norman E. Sears | 任务开发总监 | 1969年3月28日 |
| Richard H. Battin | 任务开发总监 | 1969年3月28日 |
| David G. Hoag | 阿波罗制导与导航项目总监 | 1969年3月28日 |
| Ralph R. Ragan | 仪器实验室副主任 | 1969年3月28日 |
来源: README.md116-127
从实体打印件到数字保存的历程涉及几个关键步骤和多位个人。我们今天在存储库中看到的这些代码经过了细致的数字化过程以确保准确性。
阿波罗11号源代码最初以硬拷贝打印件的形式存在,并存储在麻省理工学院博物馆。这些纸质副本包含了指令舱和登月舱软件的完整AGC程序列表。
这项历史代码的数字化工作是作为一项联合努力而进行的
实体数字化过程由Paul Fjeld执行,麻省理工学院博物馆的Deborah Douglas负责图像的收集和整理。这项合作对于将实体代码清单准确转换为数字格式至关重要。
GitHub存储库结构保留了阿波罗11号AGC源代码的两个主要组件
来源: README.md100-102
指令舱软件,标识为Comanche055,是Colossus 2A程序的一部分。这是在阿波罗11号任务期间在指令舱中运行的AGC程序。
主要细节
登月舱软件,称为Luminary099,是Luminary 1A程序的一部分。这是在阿波罗11号任务期间在登月舱中运行的AGC程序。
主要细节
来源: README.md100-102
该存储库的主要目标是准确呈现原始的阿波罗11号源代码。这意味着转录旨在与原始扫描文档中显示的内容完全一致。
对于存储库中的转录内容与Luminary 099和Comanche 055的原始源扫描之间发现的任何问题,欢迎提交拉取请求(Pull requests)。这种协作方法确保了对这份具有历史意义的软件进行数字保存的最高准确性。
该存储库使用yaYUL作为汇编器构建,yaYUL是阿波罗计划期间使用的原始YUL汇编器的现代复刻版。
阿波罗11号源代码处于公共领域,可免费用于学习、研究和教育目的。这种可访问性使得计算机科学家、历史学家和太空爱好者能够研究人类最伟大技术成就之一中使用的编程技术和方法。
来源: README.md100
阿波罗11号源代码的历史和技术意义已引起全球关注,其存储库文档被翻译成多种语言就证明了这一点。这种国际参与彰显了全球对这份重要的计算和太空探索历史的赞赏。
来源: README.md9-45