NASA до сих пор поддерживает Voyager 1 и Voyager 2 на коде, написанном на ассемблере почти полвека назад. И проблема уже не в «древнем языке», а в том, что людей, которые проектировали и документировали систему, почти не осталось.

Об этом в начале 2024 года рассказала руководитель проекта Voyager в NASA Сьюзи Додд (Suzzy Dodd). Её формулировка звучит жёстко: «The people that built the spacecraft are not alive anymore» — «людей, которые построили аппарат, больше нет в живых».

Что именно работает на Voyager и почему тут важен ассемблер

Voyager запустили в 1977 году, и оба аппарата до сих пор на связи. Их бортовые компьютеры работают на ассемблере под кастомные процессоры General Electric, которые спроектировали ещё в начале 1970-х.

Продолжение после рекламы

Иногда в пересказах всплывает «Voyager на Fortran», но это смешивает две разные части системы. Fortran связывают с наземными инструментами и старым софтом сопровождения миссии. А вот критичная «полётная» логика на борту завязана на низкоуровневый ассемблер и специфичную архитектуру железа.

Когда NASA искала инженера на замену в 2015 году, в требованиях фигурировали сразу две вещи:

  • навыки работы с ассемблером
  • глубокое понимание уникальной аппаратной архитектуры Voyager

Памяти меньше, чем у одной фотки на смартфоне

На каждом аппарате стоят три отдельные компьютерные системы. Их суммарная память — около 64-70 КБ на все три. Это меньше, чем весит один небольшой файл изображения на современном смартфоне.

Изображение к статье: NASA держит Voyager на плаву: код на ассемблере 1970-х

Додд сравнивала работу с Voyager с «пилотированием Apple II». Смысл сравнения простой: команда живёт в мире, где каждый байт на счету, а любые изменения в коде похожи на операцию на открытом сердце.

Софт обновляли, но «память команды» исчезает быстрее железа

Ключевое обновление полётного ПО появилось ближе к началу межзвёздной части миссии. Это случилось после пролёта Voyager 2 мимо Нептуна в августе 1989 года, когда аппараты сделали более автономными.

Эта версия, дополненная командными последовательностями, которые команда загружает раз в несколько месяцев, и остаётся базой того, что сейчас работает на обоих зондаx.

Но за 49 лет непрерывной работы накопились пробелы, которые важнее любого языка программирования. Команда проекта сильно сократилась и постарела. Часть бумажной документации потеряли или она сохранилась фрагментами.

Последним инженером «оригинальной» команды Voyager оставался Ларри Зоттарелли (Larry Zottarelli). Он ушёл на пенсию в 2016 году в возрасте 80 лет. Остальные инженеры того поколения либо умерли, либо старше 90. В числе тех, кто уже давно в отставке, упоминают и траекторного инженера доктора Гэри Фландро (Dr. Gary Flandro).

Сейчас задержка связи уже огромная: сигнал от Voyager идёт до Земли больше 23 часов. К моменту, когда NASA получает очередную телеметрию, аппарат успевает улететь ещё примерно на 1,5 млн км дальше в межзвёздное пространство.

Продолжение после рекламы

Додд в начале 2024 года сформулировала главный риск прямо: «The people that built the spacecraft are not alive anymore».

По материалам SpaceDaily.

Рейтинг: 0 / 5. Оценок: 0

Рекомендуем почитать

Оставьте комментарий

Перед оставлением комментария, пожалуйста, ознакомьтесь с правилами комментирования.