1969年7月20日那天,当阿姆斯特朗站在月球表面说出那句这是个人的一小步的时候,当时负责给登月做引导的那台计算机, 它全部的工作内存,连现在普通手机内存的百万分之一都不到。
这台计算机足足有32公斤重, 功耗达到了70瓦,可它的体积才只有0.97立方英尺。
![]()
更有意思的是,它运行的那些程序,根本就不是存在芯片里的,全部都是波士顿郊外雷锡恩工厂的女工们手工做出来的,她们要拿着铜丝, 一个个穿过比芝麻还小的磁环,一个比特一个比特手工穿出来的。
一台“不够格”的登月计算机
负责阿波罗制导工作的这台计算机, 简称AGC,它的存储空间分成了两块,先来看第一块,这块一共能存2048个可以随时修改的字,每个字是15位,换算成现在常用的字节,差不多就是3.75KB,再看第二块,这一块是容量为36864个字的只读存储区,所有的飞行程序全都存在这里,它的主频大概是2兆赫,这么算下来,每秒差不多能跑几万到八万五千次加减法运算。
如果拿它跟现在的智能手机比,这点性能参数小到基本可以直接忽略不计了,哪怕是随便拿一款现在的入门手机来说, 运行内存都是按GB算单位的,1GB差不多就有10亿字节,而AGC那仅有的3.75KB运行内存,连一部手机内存的百万分之一都赶不上,再说说存程序的地方,36864个字换算完大概是6.9万字节,现在我们用手机随便拍一张照片,大小都得有好几MB,它存下的所有程序加起来,连一张照片的零头都比不上。
但AGC要干的活儿,可一点都不轻松,说直白点,它得带着三吨多重的舱体,在连空气都没有的真空环境里,算好轨道、调整姿态、校准雷达,最后还得在月球表面挑出一块平整的地方, 稳稳完成降落才行。
而且这些代码,不是直接敲进去存好的,是靠手工一针一线穿进去的
AGC的整个程序,都存在一个叫核心绳存储器的装置里,拆开讲它的原理,其实和织布差不多,一堆比米粒还小的铁氧体磁环,先排成整齐的阵列,铜丝从磁环正中间穿过去,就代表二进制的1,如果从磁环外圈绕过去,就代表0, 每一根线的位置对不对,直接就决定了一个比特的数据对不对,等所有线都穿完固定好,这个程序就再也改不了了,它直接变成了一块实打实的硬件,根本不是那种能随时改bug打补丁的普通软件。
在马萨诸塞州沃尔瑟姆的雷锡恩工厂,干这个活的大多是有纺织经验的女工。她们对着图纸,把细铜丝穿过密密麻麻的磁环阵列。
![]()
工程师们半开玩笑地给这种存储器起了个外号,叫"Little Old Lady memory"——"老太太存储器",因为穿线的手大多年长、手稳。穿错一根线,不是改一行代码那么轻这段绳子,搞不好得全部拆开重新编,而且整个编织下来,得花好几个月才能做完,好处也实在:这种物理编码的存储不怕宇宙射线,不怕断电,上了天不会变。
过载那一刻,它自己决定丢什么
1969年7月20日,登月舱"鹰号"在距月面约一万米往下掉的时候,控制面板上跳出一串数字:1202。几秒后又是1201。
休斯敦地面指挥室里,现场氛围一下子就紧绷起来,这俩代号本身就传递出一个信号,计算机已经扛不住了,而且问题刚好出在交会雷达上,飞船进入下降阶段之后,本来该关掉的雷达开关,没拨到正确位置, 就这么一直不断往计算机发数据,硬生生占掉了本就不够用的处理时间。
如果放到现在来说,这种情况其实就跟你手机同时开十几个APP之后卡住差不多,很大概率会直接黑屏重启,但那时候的AGC不一样,它既没有死机,也没出任何错,反而做了一件设计阶段就定好的事情,就好比一个厨师同时接到了六桌客人的订单,他会先推掉两桌不着急的单子,把灶台腾出来给最要紧的那一桌。
AGC也一样,它自动丢掉了低优先级的雷达信号处理和显示刷新任务, 把仅剩的那点算力,全都腾出来留给了着陆制导计算。
最终拍板做这次取舍决定的,是MIT仪器实验室里一位32岁的软件工程师,玛格丽特・汉密尔顿。
放在当时来看,她一直坚持要求,软件运行一旦超载,就得主动停下那些根本做不完的工作,只留最核心的任务,哪怕那时候很多人都觉得, 这样小心完全是多此一举。
等到登月着陆的时候,警报前后一共响了五次,AGC也五次自动给自身减负, 整个着陆程序自始至终都没有中断过,等到鹰号成功落到月面上的时候,剩下的燃料只够撑大约25秒。
再后来,汉密尔顿把自己写好的代码清单堆在办公桌边,拍了一张照片,那摞纸的高度, 甚至比她本人还要高,你要知道那个年代,根本还没有软件工程师这个称呼,她带着整个团队,从零开始,给人类第一次登月,写出了一整套完整的运行规则。
要说现在, 我们天天揣在口袋里的手机,算力可比当年的AGC强出去不知道多少倍了,
可真等到手里的任务堆得完全做不完的时候,到底哪件事该放手不做,哪件事又必须死死攥住不能放,其实这种取舍的答案,早在五十年前,那容量还不到4KB的内存里, 就已经写得明明白白了。
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.