Ответ на пост «Вояджер воскрес»
Почитал комментарии к посту про Вояджер и подивился. Как же изменился мир за какие-то 40 лет. Это некоторый ответ...хм... всем комментаторам сразу.
1.Железки, работающие долгие годы, причём весьма сложные, существуют в количестве. Мы, в нашем мире одноразовых вещей, привыкли, что техника долго не служит. Этому есть разные причины, от запланированного устаревания до маркетинга и реального развития технологий. Но мы мало сталкиваемся в реальной жизни с тем, что реально долго работает. А оно есть. У той же турбины ТЭС срок службы - 40 лет (с рядом оговорок, ну так у неё и условия работы те ещё).
Я сам трогал руками комплекс, отработавший где-то с середины 60-х. И на конец 2010-х годов он был вполне живой и рабочий. Очень интересный дизайн - рабочее место оператора выглядит как рубка звездолёта из 60-х. Вот реально - подковообразный пульт, всё скруглённое, зажигающиеся транспаранты. Тоже из космической отрасли.
И таких вещей много. Мы о них не задумываемся и не встречаемся с ними, потому, когда это происходит, это вызывает вот такую реакцию: "ВАУ, железяка в космосе 40 лет работает!".
Кстати, город, как "машина для жилья". Магистральные подземные трубопроводы в моём районе не меняли с момента моего переезда сюда - это 20 лет. Ремонт их вокруг дома, где я вырос - это примерно 1986 год. :)
2. Восторг по поводу замены "прошивки" на огромном расстоянии. И здесь причина восторга - окружающие нас технологии. Все привыкли, что есть быстрый компьютер, удобный редактор, отладчик. Можно написать код, сразу его собрать и исполнить, посмотреть, как он работает и исправить ошибки. Кажется - а как иначе?
А вот как иначе - краешком застал даже я. Есть большая машина. И вам выделяют терминал и, скажем, два часа машинного времени. Таких терминалов - куда как больше одного и машина обслуживает их по очереди. Так что работает это всё не быстро и с удобной интегрированной средой тоже всё плохо. Если вы будете работать в современном стиле - то только на борьбу с синтаксическими ошибками вы потратите массу времени.
А потому - вдумчиво изучаем листинг программы, исправляем ошибки. Тщательно прорабатываем алгоритмы, сначала на бумаге. А уж потом максимально эффективно используем свои два часа. И хорошо, если так - а ещё раньше вы отправляли в машину код и через сутки в отведённое время получали распечатку. И представьте, как обидно получить ответ "синтаксическая ошибка в строке 173" :)
Потому - никакого чуда, просто иной подход к программированию и отладке.
3. Как вообще это происходит :) Я думаю, что "у нас" и "у них" всё примерно одинаково. Предположим, произошёл отказ железки, которая где-то там, в небесах. После грозных административных движений собирается коллектив людей, которые эту железку делали, и начинает искать причину отказа и пути устранения. Сначала анализируется телеметрия, по результатам строятся различные предположения. Из шкафа вынимается отработочный экземпляр железки и на нём пытаются воспроизвести отказ так, чтобы получить такую же телеметрию. Потом формируют программу...хм... исследований. Железке отправляют команды, по мере необходимости включают служебные, нештатные или редкие режимы. Это большая работа, в ней задействованы десятки людей и организаций, оформляется много бумаг. ЦУП должен выдавать команды, кто-то ещё - работать, например, четвертью мощности от штатной на передачу. При этом анализируется телеметрия с железки, её реакция. И да - в итоге можно найти источник проблемы и как-то её решить, в том числе переписав фрагмент управляющей программы. Потом это всё отлаживают на Земле, на отработочных копиях железки, потом заливают на борт. Это долгая работа. Но в ней нет никакого чуда.
С "Вояджером" всё аналогично. Успеху с коррекцией программы и определением сбойного модуля памяти предшествовала долга работа - "оттуда" получали дамп памяти, анализировали, воспроизводили ситуацию на Земле. Потом корректировали программу, гоняли на имитаторе бортового компьютера, и только потом отправили скорректированное ПО на борт.
4. Питание "Вояджера". Это РИТЭГ. Если очень-очень упрощённо - это цилиндр с плутонием и термопреобразователями. Плутоний распадается, выделяет тепло, тепло преобразуется в электричество. Может работать десятки лет (для этого и делается), но выходная мощность падает. "Космос на службу людям" - подобные (не точно такие!) "батарейки" питали автоматические маяки вдоль Северного морского пути. Можно немного почитать: https://knife.media/riteg/
5. Радиация. Радиация бывает разная и на полупроводниковую электронику действует не очень хорошо :) На флеш-память - так вообще плохо. Самое страшное - тяжёлое заряженная частица, ТЗЧ. Образует в полупроводнике проводящий канал, что приводит к короткому замыканию. Чтобы чип не сгорел - нужно контролировать потребляемый ток и снимать питание при его скачке. Нудно и подробно тут: https://habr.com/ru/articles/189066/
Чтобы всё это парировать - применяют разные решения. От дополнительных разрядов в памяти (например, код Хэмминга - позволяет исправить один исказившийся бит и очень прост в реализации) до троирования узлов и устройств. То есть один узел "размножается" в трёх экземплярах, которые работают одновременно, с одними и теми же входными данными. Тогда и на выходе должно быть одно и то же. Из трёх значений на выходе трёх узлов формируется одно выходное по принципу "два одинаковых из трёх".
Память. Мы привыкли к флешкам и гигабайтам. Однако, 50 лет назад всё было не так. До появления полупроводниковой памяти это вообще для разработчиков ЭВМ была мУка. Пожалуй, вершиной дополупроводниковой технологии является твистор-память. Это...хм... пусть будут магнитные кольца и провода. Вершина - потому что это смогли делать достаточно просто. Но тут подоспела полупроводниковая память - у неё больше ёмкость, меньше энергопотребление, больше скорость. Так что аналогия с флеш здесь не верна.
6. Радиосвязь. "Вы всё врёте, тут мобила в лесу не ловит, а они за миллионы километров прошивку отправляют!". Одно не исключает другого. Вот советский проект "ВеГа". Аэростатные зонды в атмосфере Венере передавали информацию сразу на Землю. Выходная мощность передатчика зонда 4,5 Вт. Чтобы принять такой сигнал на Земле - нужна большая антенна. И скорее всего малошумящие усилители этой антенны охлаждаются жидким азотом. Но это просто по памяти, не полезу проверять. Цитата из Википедии:
-----
В телеметрическом режиме за 30-секундной передачей чистой несущей для доплеровских измерений антеннами РСДБ скорости зонда следовал 270-секундный период передачи 48-битного синхронизирующего слова и 852 битов данных, собранных за предыдущие 30 минут (всего 900 битов в посылке, со скоростью 4 бит/с для первых 840 битов и 1 бит/с для последних 60), а затем ещё одна 30-секундная передача несущей. В режиме координатного излучения, используемом для отслеживания антеннами РСДБ координат и скорости зонда, в течение 330 с в боковых полосах передавались два тона с частотой ±3,25 МГц и подавлением несущей на 20 дБ. На Земле для РСДБ-слежения использовались 20 антенн — 6 на территории СССР, координируемые Институтом космических исследований АН СССР, и 14 по всему миру (в том числе 11 астрономических радиотелескопов и 3 антенны Сети дальней космической связи НАСА), координируемые Национальным центром космических исследований Франции, фактически все крупнейшие радиотелескопы мира, существовавшие в то время.
-----
То есть расплата за сверхдальную связь - это размер антенн и скорость передачи при канале "оттуда". При канале "туда" к этому добавляется большая мощность излучения - ведь "там" большой антенны нет. Вот даже пост на Пикабу на эту тему: Как NASA связывается с космическими аппаратами, находящимися от нас в миллиардах километрах?
Мораль проста - никакого чуда нет. Как пелось в одной старой песенке:
Ты отлично знаешь сам -
Мир наполнен чудесами!
Только эти чудеса
Люди могут делать сами!
Есть просто работа структуры, в которую вложены деньги и которая продолжает...хм...поддерживать свою работоспособность. Ну, вас же не удивляет, что у вас из крана вода течёт и свет горит?