以当今的科技发展角度,如何评价1969年阿波罗计划使人类登上月球?

关注者
1248
被浏览
782845

64 个回答

我来说阿波罗计划中的一个小细节,也许可以帮助你了解以当时的技术要把人送上月球的难度。

(下面的内容主要来自youtu.be/f2ZCVnk-oRU

我们常常把软件设计叫做“编程序”,其实,阿波罗计划的导航软件真的是“编织”出来的。

导航软件的重要性是毫无疑问的。尤其是当飞船运行到月球背面时,无法和地球直接通信,飞船的导航全靠软件指挥。所以,这样的软件容不得一个错误。除了对软件本身正确性的要求之外,软件存储介质也是至关重要的。要是存储介质在太空中受到损害,后果也是不堪设想的。

在当时,比较流行的存储介质是打孔纸带,就是在纸带上不同位置用有没有打孔表示0和1。但是,载人航天工程显然不能把性命攸关的安全性寄托在弱不禁风的纸带上面。至于磁带,它依赖于过于巨大的设备,而且在太空环境下可靠性也得不到保障。于是,最后的选择是磁环和电缆。

存储器实际上是一个有很多磁环构成的阵列,电缆从阵列中穿过,以二进制机器码(0和1)的方式保存软件信息。下图就是阿波罗导航系统中用于测试的存储器。你可以清楚地看到红色的磁环和绿色的导线。

图片来自Core rope memory

磁环的作用是改变导线上电压的状态。如果导线穿过磁环,导线上的电压就会发生改变。系统检测到这种改变后,就把这条导线上的数据解释为1。

图片来自youtu.be/f2ZCVnk-oRU

如果导线没有穿过磁环,那么导线上的电压不发生改变,系统就把这条线上的数据解释为0。

图片来自youtu.be/f2ZCVnk-oRU

可以想象,软件写入存储器的过程实际上和织布差不多。所以,项目组雇佣了很多有经验的纺织女工,采用一种类似纺车的设备,再加上一种特别的毛衣针,一位一位地把整个软件织进了下图中这个存储器。

图片来自Core rope memory

整个软件系统的大小大约是60万位。对于软件的大小来说,这个数字在今天已经是微不足道了。但是,把这样大小的数据用手工输入,而且不能有错,还是很不容易的。所以,整个软件输入的过程都经历了严格的测试。幸运的是,当时已经有自动软件测试的概念了。

最终,这个编织出来的程序成功地把宇航员带到了月球,并且安全的带回了家。

-----------------------------

评论区中有些读者把这种存储技术和磁芯存储器(Magnetic Core Memory)混为一谈。其实,它们是两种不同的技术。阿波罗计划中用到的这种存储技术叫做Core Rope Memory。我没有找到标准的中文翻译,就暂且把它叫做磁芯-线存储器吧。

磁芯存储器技术的主要发明者是美籍华人王安。其实使用磁芯做存储器的想法由来已久,而王安在20世纪40年代解决了关键的技术难题,让这一技术走向应用。不过,王安获得这项专利也不容易,中间牵涉了多年的争议和官司。

磁芯-线存储器出现于60年代,晚于磁芯存储器。

这两种技术的主要区别在于:磁芯-线存储器是一种“只读”的存储技术,也就是说,数据一旦写进去,就不能由软件修改了。而磁芯存储器是一种可以读写的存储技术,也就是说,软件可以任意写入数据,然后读出来。

你也学会奇怪,为什么一项出现较晚的技术反而不如较早的技术呢?其实,磁芯-线存储器是有它的优势的:它的存储密度很高,每立方英尺可以存储72KB数据,这是磁芯存储器的18倍。

可以读写当然是磁芯存储器的优势,但是计算机系统中很多场合还是有只读存储器的用武之地的,比如阿波罗计划的导航软件肯定没有在太空修改代码的必要。此外,磁芯-线存储器在太空中的可靠性应该也比磁芯存储器高。这些应该就是阿波罗计划选择磁芯-线存储器的原因了。

听过一句话形容美国人登月叫“开着洗衣机横渡了大西洋”,感受一下。
为什么?