编程与软件开发

玛格丽特·汉密尔顿逝世:她的软件帮助阿波罗11号着陆

玛格丽特·汉密尔顿享年90岁去世。她的职业生涯促成了软件工程概念的确立,并参与开发阿波罗飞船上的制导软件。她领导的优先级处理系统是阿波罗11号在计算机超负荷时仍能继续着陆的主要原因之一。

2026-10-08
1 分钟阅读
1 浏览量
certi.news
玛格丽特·汉密尔顿逝世:她的软件帮助阿波罗11号着陆

玛格丽特·汉密尔顿享年90岁去世。她的职业生涯与开发美国国家航空航天局阿波罗计划飞船上的制导软件,以及提出“软件工程”这一术语密切相关。汉密尔顿领导团队开发了相关软件,这些软件曾用于1969年至1972年间六次登月任务。她后来于2016年获得美国总统自由勋章。

应对关键计算机负载的软件代码

汉密尔顿最重要的贡献是为制导系统软件设计了一套安全机制。该系统经过设计,能够在飞船计算机收到超出其实时处理能力的指令时,区分主要任务和次要任务,取消优先级较低的任务,重新运行任务所需的操作,并发出警报提醒宇航员。

1969年阿波罗11号任务中,登月舱“鹰号”着陆时,这一设计发挥了作用。当巴兹·奥尔德林输入显示高度和其他数据的指令时,计算机因负载过高开始发出警报。但安全机制保留了着陆所必需的任务,使飞船得以安全抵达静海,而不是取消着陆。

从天气模拟到阿波罗计划

汉密尔顿于1958年从厄勒姆学院数学专业毕业后开始职业生涯。她曾与麻省理工学院数学家爱德华·洛伦兹共事,编写用于天气模拟的LGP-30计算机程序;1961年,她转入麻省理工学院的SAGE项目,编写帮助美国空军搜索潜在敌机的软件。

在SAGE项目和阿波罗研究期间,汉密尔顿专注于提高软件可靠性并防止错误。其中一个例子后来被称为“洛伦兹错误”:在任务模拟器中输入预先设定的发射序列,导致系统崩溃。汉密尔顿要求增加防护机制,以阻止此类错误;后来阿波罗8号任务中确实出现了类似输入,因此需要恢复导航数据。

超越阿波罗计划的遗产

阿波罗计划结束后,汉密尔顿继续致力于防止错误和提高容错能力。她于1976年创立Higher Order Software公司,并于1985年离开该公司,创立Hamilton Technologies。后者的主要产品是Universal Systems Language,用于开发复杂软件系统,并优先考虑错误预防和防御性编程。

汉密尔顿参与开发的阿波罗软件于2015年被上传至GitHub。2019年,谷歌还向她致敬,在莫哈韦沙漠的一座太阳能电池板农场中,用超过10万面镜子创作了一幅巨型图像。

为什么这则消息很重要?

汉密尔顿遗产的重要性不仅在于她的代码是历史性成就的一部分,更在于它表明,可靠性始于系统设计,而不是等到故障出现之后。软件并没有阻止计算机过载,但它确定了哪些部分可以牺牲、哪些部分必须保留,并将可能危及任务的状况转化为有序的恢复流程。对于运行条件不允许轻易失败或重试的系统而言,这一理念至今仍然至关重要。

新闻来源
Ars Technica
查看原始来源 ↗
c
作者

certi.news

同一分类

你可能还喜欢

查看所有新闻