APP下载

登月前3分钟,她的代码力挽狂澜

2019-11-14英国那些事儿

润·文摘 2019年10期
关键词:阿姆斯特朗镜面阿波罗

当地时间7月18日晚上,位于加州的伊万帕太阳能发电站出现一段无比惊艳的画面:日落月升之后,沙漠里10万多面太阳能电池板的镜面突然开始调整自己和月亮的角度,月光反射到镜面上,组成了一幅女性半身像,旁边还有一个数字和环绕的英文字母:阿波罗11号,Margaret Hamilton。

7月20日,是人类登月50周年纪念日。50年前,阿波罗11号踏上了月球。50年后,人们用月光组成肖像,致敬“阿波罗11号先锋”Margaret Hamilton。

其实,Margaret并没有亲自踏足月球,但她却是人类登月的功臣,因为她,人类首次在计算机的帮助下完成了登月,更因为她,阿波罗11号得以在最后3分钟及时救险,宇航员阿姆斯特朗也得以迈出那“决定性的一大步”。

Margaret于1955年考入密歇根大学,本科毕业后,她到麻省理工当了一位编程员。当时的计算机还是电子管的,计算能力很低。但Margaret依然有着浓厚的兴趣,她很快就写出了预测天气和侦察敌人军机数量的程序。她的小成就引起了美国宇航局NASA的注意。1965年,NASA的人找到Margaret:“我们要找会编程的人,帮我们把人送到月球上去。”Margaret回答:“好,我去!”

那时,Margaret的女儿年纪还小,为了既不影响登月,又能照顾到女儿,Margaret就把女儿带到实验室来。女儿假扮宇航员坐进模拟器中,帮母亲测试软件的运行和调试。有一次,女儿在“模拟着陆”时,不小心提前打开了一个按钮,这让Margaret心中一惊,她想:万一在实际登月运行中,宇航员也发生了类似的错误,问题就大了。

她立刻向NASA报告,要求开始写防止宇航员提前开启某些程序的保护程序。一开始,其他人认为没有必要:“训练有素的宇航员绝对不会犯下几岁小女孩那样的错误!”Margaret据理力争:在太空黑暗又孤独的环境下,人犯错误的概率相当大。最终Margaret赢得了争论,她主导的保护程序,就這样嵌入了飞船。

这个程序的实现方式是:制定程序优先级调度,让程序可以随时中止优先级较低的任务,专注于高优先级任务。

4年后的1969年7月16日,阿波罗11号飞船在大推力火箭“土星5号”的推动下,飞向月球。20日,阿波罗11号飞向着落点。在还有3分钟就要着陆的时候,一名宇航员不小心点错了按钮。阿姆斯特朗立刻报告:“1202程序警报!”

指挥中心的空气瞬间凝结了,所有人都望向Margaret,脸上带着惊慌:降落,还是不降落?

千钧一发之际,Margaret突然想到当年的那个保护软件:如果有人提前启动了其他程序,这个保护程序一定会站出来阻止!她接过麦克风,坚定喊话:“相信我们的程序,正常登陆吧!”3分钟后,阿波罗11号成功着陆。

2016年,Margaret获得了总统自由勋章,以表彰她在登月方面做出的杰出贡献。

Margaret说:“我们不应该就此停下探索的脚步!我们应当更加无惧无畏,哪怕有专家跳出来说‘这不合理‘那讲不通,因为,我们在梦想变为现实的路上,除了你自己,世上没人能相信它可以实现,但是,只要你继续一往无前,梦想终究会变成现实……”

(南亭摘自英国那些事儿微信号)

猜你喜欢

阿姆斯特朗镜面阿波罗
镜面铝线路载板在LED COB光源中应用
镜面小屋
从艺术品中走出来的古希腊神话故事——阿波罗篇
几何映射
儿童诗四首
登月50年模型图解阿波罗1号~17号大盘点!
为何我想不到阿波罗尼斯圆
由阿波罗尼斯圆衍生圆锥曲线的优美性质
浮世绘
环法王赛车失而复得