Программирование и разработка программного обеспечения

Умерла Маргарет Хэмилтон, инженер по программному обеспечению, чей код помог «Аполлону-11» совершить посадку

Маргарет Хэмилтон умерла в возрасте 90 лет после карьеры, в ходе которой она способствовала становлению концепции инженерии программного обеспечения и разработке навигационного ПО для космических аппаратов «Аполлон». Система приоритетной обработки, которой она руководила, стала одной из главных причин, позволивших «Аполлону-11» продолжить посадку, несмотря на перегрузку его компьютера.

2026-10-08
3 мин. чтения
1 просмотров
certi.news
Умерла Маргарет Хэмилтон, инженер по программному обеспечению, чей код помог «Аполлону-11» совершить посадку

Маргарет Хэмилтон умерла в возрасте 90 лет. Её карьера была связана с разработкой навигационного программного обеспечения для космических аппаратов программы «Аполлон» NASA, а также с введением термина «инженерия программного обеспечения». Хэмилтон руководила командами, разработавшими ПО, использовавшееся в шести миссиях по высадке на Луну в период с 1969 по 1972 год. Позже, в 2016 году, она была награждена Президентской медалью Свободы США.

Код, справившийся с критической вычислительной нагрузкой

Главным вкладом Хэмилтон стала разработка защитного механизма в программном обеспечении навигационной системы. Система была спроектирована так, чтобы различать основные и второстепенные задачи, когда бортовой компьютер получает больше команд, чем способен обработать в реальном времени: она отменяла задачи с более низким приоритетом и перезапускала операции, необходимые для выполнения миссии, одновременно выдавая предупреждение астронавтам.

Эффект от этой разработки проявился во время посадки лунного модуля «Игл» в ходе миссии «Аполлон-11» в 1969 году. Когда Базз Олдрин ввёл команды для отображения высоты и других данных, компьютер начал выдавать предупреждения из-за перегрузки. Однако защитный механизм сохранил необходимые для посадки задачи, что позволило космическому аппарату безопасно достичь Моря Спокойствия вместо отмены посадки.

От моделирования погоды к «Аполлону»

Хэмилтон начала карьеру после окончания математического факультета колледжа Эрлхэм в 1958 году. Она работала с математиком Массачусетского технологического института Эдвардом Лоренцем и программировала компьютер LGP-30, использовавшийся для моделирования погоды, а в 1961 году перешла к проекту SAGE в MIT, где писала программное обеспечение, помогавшее ВВС США искать потенциальные вражеские самолёты.

Во время работы в SAGE и исследований для «Аполлона» Хэмилтон сосредоточилась на надёжности программного обеспечения и предотвращении ошибок. Одним из примеров стал случай, позднее получивший название «ошибка Лорена», когда ввод предварительно заданной последовательности запуска в симуляторе миссии привёл к сбою системы. Хэмилтон попросила добавить защиту от такого типа ошибок, а затем похожий ввод действительно произошёл во время миссии «Аполлон-8», что потребовало восстановления навигационных данных.

Наследие, выходящее за рамки программы «Аполлон»

После завершения программы «Аполлон» Хэмилтон продолжила работать над предотвращением ошибок и обеспечением отказоустойчивости. В 1976 году она основала компанию Higher Order Software, а в 1985 году покинула её, чтобы основать Hamilton Technologies. Её главным продуктом стал Universal Systems Language для разработки сложных программных систем с приоритетом предотвращения ошибок и защитного программирования.

В 2015 году программное обеспечение «Аполлона», в разработке которого она участвовала, было добавлено на GitHub. В 2019 году Google также почтила её память огромным изображением, созданным более чем 100 тысячами зеркал на солнечной электростанции в пустыне Мохаве.

Почему эта новость важна?

Значение наследия Хэмилтон заключается не только в том, что её код стал частью исторического достижения, но и в том, что он показал: надёжность начинается с проектирования системы ещё до возникновения неисправности. Программное обеспечение не предотвратило перегрузку компьютера, но определило, чем можно пожертвовать, а что необходимо сохранить, превратив ситуацию, способную поставить под угрозу миссию, в организованную процедуру восстановления. Эта идея по-прежнему имеет ключевое значение для систем, условия эксплуатации которых не допускают отказа или простой возможности повторить попытку.

Источник новости
c
Автор

certi.news

В той же категории

Вам также может понравиться

Все новости