真没造假?NASA开源阿波罗11号登月代码
美国正野心勃勃地计划着重返月球。但为何当年阿波罗登月那么顺利,如今却困难重重?
近日,美国国家航空航天局(NASA)将阿波罗11号指令舱与登月舱的原始AGC软件代码正式
开源
并纳入公
美国正野心勃勃地计划着重返月球。但为何当年阿波罗登月那么顺利,如今却困难重重?
近日,美国国家航空航天局(NASA)将阿波罗11号指令舱与登月舱的原始AGC软件代码正式开源并纳入公共领域。代码由VirtualAGC项目与MIT博物馆联合完成数字化整理,支持简体中文等数十种语言文档。用户可自由下载、阅读或编译运行(兼容Linux、WindowsXP及更高版本、macOS10.3+等系统)。

当年就是它们,在3.8KBRAM、69KBROM硬件上,把三个人送上了月球又接回来。
此次NASA官方确认的开源代码,完整收录阿波罗11号任务两大核心模块:
指令舱代码(Comanche055)
:负责指令舱导航、通信与生命保障系统控制
登月舱代码(Luminary099)
:承担登月舱登月下降、上升引擎控制等关键飞行逻辑

代码采用当年专用的yaYUL汇编语言编写,总计约14.5万行。
这段57年前的代码,是人类航天与计算机工程的经典范本。AGC规格放在今天显得极为简陋,它甚至只有3840字节的RAM和69120字节的ROM存储空间,最高运行速度约为每秒85000条指令。
尽管如此,其尺寸却与现代台式游戏主机相当,达到了61.595x31.580x15.174厘米,重31.8公斤。此外,指令舱还需要两个8.1公斤的DSKY控制器单元,登月舱则配备一个DSKY。
代码本身早已流传,这次"转正"
这些代码并不是最近才公布,早在2003年,技术研究员RonBurkey依托MIT博物馆保存的原始纸质代码打印件,启动手工转录与数字化工作,建立VirtualAGC项目,为代码保存奠定基础。
时间来到2016年7月,前NASA实习生ChrisGarry将完整数字化代码上传至GitHub,首次实现公众可便捷访问。不过当时未获NASA官方正式开源认证。
到今年4月11日,NASA联合VirtualAGC项目、MIT博物馆完成最终校验,正式宣布代码开源并划归公共领域,同步更新GitHub仓库为官方认证版本,并补充简体中文等数十种语言说明文档。
开源的意义有时候很微妙
。不是让人真的去跑这些代码,而是把"我们曾用这么简陋的东西做到过"这个事实,摊开给所有人看。
开源
地址如下,感兴趣的朋友可以研究一番:
官方GitHub仓库(NASA认证版):
仓库标注“PublicDomain(公共领域)”,支持免费克隆、下载,包含完整代码文件、注释与历史文档。
VirtualAGC官方数字化源头:
提供原始代码扫描件、仿真工具与技术手册,支持Linux、WindowsXP及以上、macOS10.3及以上等多系统编译运行。
