云上天镜SpaceLens
26-10-09 02:24 微博认证:航天博主

【阿波罗任务登月飞行软件主要开发者玛格丽特·汉密尔顿逝世】美国麻省理工学院宣布,美国著名计算机科学家、系统工程师和企业家,阿波罗登月计划飞行程序的主要开发者玛格丽特·汉密尔顿于当地时间9月30日逝世,享年90岁。

作为计算机领域的先驱,汉密尔顿发表了130多篇论文,她帮助确立了软件工程作为一门独立学科的地位。她从1959年到20世纪70年代中期在麻省理工学院工作,之后成为了一位成功的计算机企业家和首席执行官。汉密尔顿于1936年出生于印第安纳州保利,1955年开始在密歇根大学学习数学,之后转学到厄勒姆学院,并于1958年获得数学学士学位,辅修哲学。

汉密尔顿在工作中展现出了领导才能,以及敏锐的问题解决能力和批判性思维,这些特质后来多次拯救了阿波罗计划。在阿波罗计划期间发生了一起被称为“劳伦失误”的事件:某一天,她当时四岁的女儿劳伦在仪器实验室玩耍指令舱模拟器时,不知何故在模拟器飞行过程中启动了一个名为P01的发射前程序,导致模拟器彻底崩溃。汉密尔顿在技术文档中添加了一个程序插件,警告用户不要在飞行过程中启动P01。她还提出了一项软件修复方案,以防止在实际任务中再次发生此类错误,但她的方案被否决了,理由是训练有素的宇航员绝不会犯同样的错误。然而,在1968年的阿波罗8号任务中,这种情况却恰恰发生了:吉姆·洛弗尔在飞行过程中意外触发了P01指令,导致飞行中的导航数据丢失。汉密尔顿和她的团队被召集来解决这一错误,之后她提出的修改方案被整合到程序中。这是“防御性”编程的早期案例,即构建能够自行预测或修复错误的软件。

汉密尔顿对阿波罗计划最著名的贡献发生阿波罗11号登月任务期间。就在“海鹰”号登月舱即将降落在月球表面前,机载计算机发出警报。它检测到一个1202错误:由于硬件开关故障,计算机过载,系统可能无法处理复杂的着陆程序。但汉密尔顿和她的团队开发了优先级驱动的软件,能够关闭不必要的后台任务,从而优先处理关键任务。休斯顿信任汉密尔顿的软件,允许任务继续进行,两名宇航员首次踏上了月球。

她还荣获众多奖项和荣誉。在互联网,她在阿波罗计划期间与自己的团队编写的一人多高的程序代码打印件的合影开始疯传。这些代码在2015年被上传至GitHub。

玛格丽特·汉密尔顿毕生致力于预防错误,并以身作则,建立了一套基于问题解决和系统工程的软件工程实践,令人受益匪浅。

发布于 福建