ТОКИО — Когда я работал в НАСА в 1980-х годах, каждый спутник и космический корабль, вышедший на орбиту, запускал одноразовые, закодированные вручную полупатентованные программы. Этот подход был болезненным, дорогостоящим, а иногда и катастрофическим, как в случае с потерей Mars Climate Orbiter в 1999 году из-за ошибки в программном обеспечении.
Все изменилось. В своем программном докладе «Space Grade Linux» на конференции Open Source Summit Japan Рамон Рош, давний разработчик робототехники и генеральный менеджер Dronecode Foundation, рассказал, как Linux и программное обеспечение с открытым исходным кодом становятся стандартными для каждого запуска, заменяя сделанные на заказ одноразовые программы прошлого.
Это изменение происходит уже некоторое время. К 2013 году Международная космическая станция (МКС) заменила свои ноутбуки с Windows на машины с Debian Linux для критически важных задач. Сегодня рабочая лошадка SpaceX Falcon 9 и космический корабль Dragon работают под управлением Linux. Рош также отметил, что первый самолет на другой планете — вертолет Ingenuity на Марсе — летал с Linux. Черт возьми, разработчику недавно удалось запустить Doomon с открытым исходным кодом, спутник Европейского космического агентства (ЕКА).
Но Рош подчеркнул, что не хватает одного. Общая космическая платформа Linux, позволяющая космическим компаниям перестать «конкурировать в сантехнике» и начать совместно использовать базовую программную инфраструктуру.
Вызов NewSpace: более дешевые запуски, более сложное программное обеспечение
Экономический фон представляет собой классическую сюжетную линию космических технологий: доступ к орбите стал дешевле, чем когда-либо, но сложность программного обеспечения и требования к безопасности продолжают расти.
«Вы можете запустить спутник по цене хорошего автомобиля», — сказал Рош, отметив, что стоимость килограмма «быстро приближается к менее чем 100 долларам за килограмм доставки полезной нагрузки в космос», что, в свою очередь, подпитывает маховик новых запусков, большего количества приложений и даже «центров обработки данных в космосе».
Что не масштабируется, утверждает он, так это то, что многие миссии до сих пор разрабатываются как индивидуальные, одноразовые программные комплексы. «Сейчас 2025 год, и мы все еще находимся в фазе, подобной 1969 году», когда миссии разовые и дорогостоящие. По его словам, эта модель «была хороша тогда, когда запуски стоили миллионы долларов», но больше не соответствует экономике NewSpace.
Почему открытый исходный код — это будущее космических миссий
Суровые реалии космоса — вызванные радиацией «единичные события», которые перезагружают системы без предупреждения, задержки связи, «измеряемые минутами» и невозможность «SSH там» починить сломанный спутник — подталкивают разработчиков к надежным, хорошо понятным, поддерживаемым сообществом открытым исходным кодам вместо проприетарных стеков.
Проблема, по мнению Рош, не в том, является ли Linux подходящим базовым уровнем для автономных систем, а в том, как он используется.
Опрос практиков определил Yocto как «явного победителя» среди встраиваемых дистрибутивов Linux. Тем не менее, у нас все еще есть фрагментированная среда команд, «строящих свою собственную версию Linux с нуля» без «общего базового слоя», сказал Рош.
«Все согласны с тем, что Linux — это ответ», — сказал он. «Но никто не может прийти к единому мнению, какой именно Linux».
Учимся на успехе индустрии дронов с открытым исходным кодом
Эта фрагментация кажется знакомой компании Roche, которая более десяти лет работала в экосистеме дронов вокруг PX4 и связанных с ней проектов.
«Я был там в 2010 году, когда индустрия дронов выглядела очень похожей. Каждый строил свои собственные стеки, никто ни с кем не разговаривал», — вспоминает он, описывая «годы сложных усилий» и «каждая компания заново изобретает велосипед, несовместимые протоколы», прежде чем сообщество решило «перестать конкурировать в сантехнике и начать конкурировать в инновациях».
По его словам, этот сдвиг позволил использовать открытый исходный код для питания «большинства коммерческих и профессиональных дронов по всему миру»: от сельского хозяйства и инспекции до картографирования, поисково-спасательных операций и даже обороны.
Представляем Papermoon: предлагаемый стек Linux космического уровня
Ответ — Papermoon, предлагаемый стек Linux космического уровня. Рош описал его как «проект с открытым исходным кодом и новую основу», построенную на Linux, как «автовоспроизведение, архитектуру среднего уровня», лицензированную MIT, с сертификатом происхождения разработчика, а не с «трениями» в соглашениях о вкладе.
Целью является многоуровневый стек:
- Платформы пользовательского пространства для конкретных задач вверху.
- Управляемая поддержка совета директоров и уровень инфраструктуры председателей посередине.
- Yocto/OpenEmbedded в качестве базовой системы сборки, обеспечивающей воспроизводимые образы, долгосрочное обслуживание и кросс-компиляцию.
Что касается аппаратного обеспечения, первые цели включают в себя платы для разработки RISC-V, «такие как Raspberry Pi, той же ценовой категории», сказал Рош, а также платформы космической разработки, такие как радиационно-устойчивый MPSoC от Microchip, с непрерывной интеграцией, уже работающей «при каждом коммите», и образами, загружающимися на реальных платах.
«Вот что вы получаете», — сказал Рош аудитории, утверждая, что команды, которые внедряют Papermoon, «не начинают с нуля» — базовый уровень, система сборки и «безопасная конфигурация» представляют собой «месяцы, которые вам не придется тратить на переосмысление, если вы сотрудничаете с нами».
Создание системы, критически важной для безопасности, с помощью инициативы ELISA
Чтобы решить проблему безопасности и сертификации, проект реализуется в рамках инициативы Linux Foundation «Включение Linux в безопасные приложения» (ELISA). Компания Roche отметила работу вице-президента ELISA Кейт Стюарт как символ сообщества, с которым Papermoon хочет сотрудничать.
«Если вы создаете критически важные для безопасности системы, работающие на Linux, вам лучше не у кого учиться», — сказал он. «ELISA работает над этой проблемой с 2019 года: как использовать Linux в системах, где сбой означает гибель людей?»
Год назад около 30 человек встретились лично в Центре космических полетов имени Годдарда НАСА (GSFC) — моей домашней базе, когда я работал в НАСА — и еще 40 присоединились практически из более чем 20 организаций, агентств и исследовательских групп, чтобы «решить направление этого проекта», который Рош оформил как «не разговор только о техническом обслуживании, это настоящее, настоящее обязательство».
Дорожная карта будущего: от инкубации к новому фундаменту
Следующий шаг, по его словам, — это «выйти из инкубации ELISA и сформировать наш собственный фонд с нейтральными накладными расходами, управляемый участниками, те же модели, которые работают для Linux автомобильного уровня», где члены-учредители «помогут нам сформировать то, чем это станет: управление, дорожную карту и стандарты, которые мы устанавливаем».
Обращение Рош к разработчикам и компаниям, присутствовавшим в зале, было резким: изобретательность «доказала, что Linux принадлежит космосу», но «следующая миссия не должна начинаться с нуля».
«Вопрос в том, каждая ли команда после этого перестраивается с нуля или мы даем им эту основу?» — спросил он, позиционируя Papermoon как эту общую базу и призывая тех, кто «строит космос», кто понимает закономерности в дронах и автомобилях, «прийти поговорить с нами» и «помочь нам заложить фундамент для следующей космической эры».
ТЕНДЕНЦИОННЫЕ ИСТОРИИ YOUTUBE.COM/THENEWSTACK Технологии развиваются быстро, не пропустите ни одной серии. Подпишитесь на наш канал YouTube, чтобы смотреть все наши подкасты, интервью, демонстрации и многое другое. ПОДПИСАТЬСЯ Группа, созданная в Sketch. Стивен Дж. Воан-Николс, он же sjvn, писал о технологиях и технологическом бизнесе с тех пор, как CP/M-80 была новейшей операционной системой для ПК, скорость 300 бит/с — высокоскоростное подключение к Интернету, WordStar — современный текстовый процессор, и он нам понравился. Узнайте больше от Стивена Дж. Воана-Николса.