Table of Contents

Переход от запатентованной встроенной операционной системы к альтернативе с открытым исходным кодом является одним из наиболее последовательных решений платформы, которые может принять промышленная технологическая компания. Переход влияет на все: от уровней абстракции оборудования и стеков драйверов до рабочих процессов разработки, положений безопасности и долгосрочной общей стоимости владения. В то время как обещание более низких лицензионных сборов и большего контроля над программным стеком является убедительным, путь от закрытой, поставляемой поставщиком ОС до фонда с открытым исходным кодом, такого как Linux или Zephyr, требует тщательного планирования, поэтапной реализации и глубокой институциональной покупки. Это расширенное тематическое исследование рассматривает производителя промышленной автоматизации среднего размера, который успешно совершил этот скачок, препятствия, которые он преодолел, и измеримые преимущества, которые последовали.

Справочная информация о тематическом исследовании

Компания профилировала здесь — назовем это SysCon Automation — проектирует и строит программируемые логические контроллеры (PLC), удаленные терминалы (RTU) и краевые шлюзы для заводских полов и энергетических сетей. Более десяти лет ее продукты работали на фирменной операционной системе реального времени (RTOS) от одного поставщика. Эта ОС обеспечивала детерминированное планирование, сертифицированное критическое ядро безопасности и зрелую инструментальную цепочку, которую инженеры использовали с момента основания компании. Однако, поскольку линейка продуктов SysCon расширилась до граничных вычислений и подключения к IoT, запатентованная ОС стала узким местом. Лицензирование затрат масштабировалось линейно с каждым устройством, следы памяти были жесткими, и добавление пользовательского драйвера для нового датчика часто требовало шестимесячного взаимодействия с командой поддержки поставщика ОС. К 2020 году SysCon тратил более 800 000 долларов в год на лицензии и техническое обслуживание ОС, и его инженеры сообщили, что 40% времени их разработки было

В то же время, экосистема с открытым исходным кодом значительно созрела. дистрибутивы Linux, оптимизированные для устройств с ограниченными ресурсами в реальном времени, такие как встроенные патчи ядра Yocto Project & #8217, Zephyr для микроконтроллеров в реальном времени и Ubuntu Core для безопасных развертываний IoT, предложили надежные альтернативы. Поддержка сообщества выросла, чтобы конкурировать с поддержкой проприетарных поставщиков, а крупные промышленные игроки, такие как Siemens, Bosch и ABB, уже начали поставлять контроллеры с открытым исходным кодом. Технический директор SysCon инициировал официальную оценку в начале 2021 года, поручив небольшой команде оценить, может ли ОС с открытым исходным кодом соответствовать тем же требованиям надежности, детерминизма и сертификации, которые исторически обеспечивала проприетарная ОС.

Проблемы, с которыми сталкиваются в переходный период

Группа по оценке быстро определила четыре категории проблем, которые определят сложность проекта по миграции.

Аппаратные и программные совместимости

Существующие ПЛК SysCon использовали специализированный модуль системы (SoM) с проприетарным загрузчиком, периферийными устройствами с памятью и слоем абстракции аппаратного обеспечения с закрытым исходным кодом (HAL). HAL проприетарной ОС был тесно связан с этим аппаратным обеспечением; замена ОС означала либо переписывание драйверов с нуля, либо поиск эквивалентов с открытым исходным кодом. Некоторые пользовательские ASIC не имели опубликованной документации уровня регистра, заставляя SysCon подписывать соглашения о неразглашении только для получения информации, необходимой для написания нового драйвера. Тестирование совместимости показало, что 38% пакетов поддержки устаревших плат (BSP) потребует полной переделки для работы на Linux, а еще 22% могут быть портированы только после обратной инженерии аппаратных интерфейсов, которые проприетарный поставщик никогда публично не документировал.

Обучение персонала и пробелы в навыках

Большинство инженеров SysCon, работающих в области разработки IDE, инструментов конфигурации и системы сборки, провели всю свою карьеру, работая в собственной операционной системе. Экосистемы с открытым исходным кодом, напротив, требуют знакомства с процессом сборки ядра Linux, связываниями Device Tree, рецептами Yocto / BitBake и контролем версий с открытым исходным кодом с Git и Gerrit. Аудит навыков показал, что только 12% команды разработчиков SysCon имели практический опыт разработки ядра Linux или встроенных систем сборки Linux. Остальным требовалась интенсивная переподготовка, а несколько старших инженеров выразили сопротивление «отказу от системы, которая никогда не терпела неудачу». Решение этих человеческих факторов было столь же важным, как и решение технических.

Стабильность и безопасность системы в период миграции

Промышленные контроллеры должны соответствовать строгим стандартам надежности — часто 99,999% времени безотказной работы и максимальной задержке прерывания 10 микросекунд. Проприетарная ОС была сертифицирована на функциональную безопасность (IEC 61508 SIL 2) после нескольких лет проверки. Переаттестация ОС с открытым исходным кодом потребует обширного тестирования по тому же стандарту, процесс, который может легко занять 12-18 месяцев. Кроме того, быстрый цикл патчей с открытым исходным кодом ввел бремя управления безопасностью, с которым SysCon никогда не сталкивался: проприетарный поставщик выпускал обновления ежеквартально; патчи безопасности Linux поступают еженедельно. SysCon должен был решить, как переваривать и квалифицировать эти патчи без дестабилизации производственных устройств в полевых условиях.

Сроки реализации проекта и перерасход средств

Совет директоров хотел, чтобы миграция была завершена в течение двух лет, но инженерная команда прогнозировала, что полностью сертифицированная, готовая к производству платформа с открытым исходным кодом займет не менее трех лет. Бюджетные оценки варьировались от 1,2 миллиона долларов (для минимального порта без сертификации) до 3,8 миллиона долларов (для полной сертификации SIL 2 и устаревшего покрытия драйверов). команде нужно было построить бизнес-кейс, который оправдывал бы первоначальные инвестиции против долгосрочных сбережений - трудная продажа, когда запатентованная ОС продолжала работать идеально, хотя и дорого.

Шаги, предпринятые для обеспечения успешного перехода

Руководство SysCon решило продолжить миграцию, но только после реализации строгого поэтапного подхода, предназначенного для управления рисками и наращивания импульса.

Выбор правильного Open Source OS Foundation

Команда оценки провела тестирование трех кандидатов: встроенный Linux общего назначения (Yocto Project), вариант Linux в реальном времени с набором исправлений PREEMPT RT и Zephyr RTOS для небольших контроллеров. После проверки задержки загрузки, объема памяти и доступности драйверов они выбрали Yocto с PREEMPT RT для PLC среднего и высокого класса и Zephyr для RTU с ограниченными ресурсами. Эта стратегия с двумя операционными системами сохранила гарантии производительности при использовании максимально широкой экосистемы с открытым исходным кодом. Команда также приняла систему сборки OpenEmbedded для создания пользовательских дистрибутивов Linux, адаптированных к каждому семейству продуктов, гарантируя, что были включены только необходимые модули ядра и библиотеки — ключевой фактор в минимизации поверхностей атаки безопасности и использования флэш-памяти.

Разработка поэтапного миграционного плана

Вместо обновления «большого взрыва» SysCon разделил миграцию на три этапа в течение 30 месяцев.

  • Фаза 1 — прототипирование и доказательство концепции (месяцы 1-8): Портировать одну линейку продуктов с низким объемом в Yocto Linux, используя существующее оборудование, переработанное с помощью загрузчика с открытым исходным кодом (U-Boot). Проверить все критические циклы в реальном времени и измерить детерминизм против проприетарной базовой линии ОС.
  • Фаза 2 — Переписывание драйверов и подготовка к сертификации (месяцы 9-18): Начните процесс сертификации IEC 61508 со сторонним оценщиком безопасности, используя дистрибутив на основе Yocto, построенный специально с критически важными для безопасности разделами (например, используя гипервизор Xen или Jailhouse для изоляции рабочих нагрузок безопасности и небезопасности.
  • Фаза 3 — Полномасштабное развертывание и выход на пенсию (месяцы 19-30): Перемещайте оставшиеся продукты большого объема, удалите проприетарную ОС на всех новых проектах и перенесите устаревшие устройства с полевым обновлением на новую ОС через обновления прошивки по воздуху (OTA).

Инвестирование в обучение персонала и изменение культуры

SysCon в партнерстве с поставщиком обучения Linux Foundation предоставил 12-недельный встроенный буткамп разработки Linux для всех 45 инженеров. Учебная программа охватывала модули ядра, Device Tree, написание рецептов Yocto, теорию планирования в режиме реального времени и закаливание безопасности с помощью таких инструментов, как OpenSCAP и clang-static-analyzer . Инженеры, которые завершили буткамп, получили официальную сертификацию, и компания создала внутреннюю «Гильдию открытых источников», которая еженедельно собиралась, чтобы делиться советами и просматривать патчи ядра друг друга. Для решения проблемы культурного сопротивления технический директор провел ратуши, объясняя финансовое обоснование — к 2025 году миграция прогнозировалась, чтобы сэкономить 1,5 миллиона долларов в год только в лицензировании — и пригласил инженеров внести улучшения драйверов обратно в сообщество, давая им чувство собственности на новой платформе.

Тщательное тестирование в контролируемых средах

SysCon создал специальную испытательную лабораторию, которая реплицировала каждый вариант производственного оборудования и запускала трубопроводы непрерывной интеграции (CI) с использованием Jenkins и KernelCI . Каждая сборка Yocto была автоматически развернута на флоте испытательных плат, которые выполняли батарею из 3200 приемочных испытаний, включая задержку прерывания в худшем случае, давление памяти и сценарии отказоустойчивости. Команда также создала упряжку для инъекций с использованием Linux Trace Toolkit Next Generation (LTTng) для измерения путей выполнения при симулированных аппаратных сбоях. Только после того, как сборка прошла 14 дней непрерывного стресс-тестирования с нулевыми критическими сбоями, она была повышена до состояния выпуска «кандидата».

Разработка стратегий поддержки и обслуживания

Поскольку проекты с открытым исходным кодом не поставляются с горячей линией поддержки 24/7, SysCon построил свою собственную многоуровневую модель поддержки. Tier 1 был внутренней вики-системой компании и каналом Slack, контролируемым в рабочее время. Tier 2 состоял из трех старших инженеров, которые завершили курс Linux Foundation Embedded Linux Development Advanced . Tier 3 был контрактом с опорой с консалтинговой фирмой, специализирующейся на встроенной поддержке Linux. Патчи безопасности были проглочены через структурированный рабочий процесс: скрипт мониторинга проверял Linux Kernel Mailing List (LKML) и рекомендации по безопасности проекта Yocto, и любой патч, влияющий на подсистему ядра, используемую на SysCon, автоматически помечался для обзора в течение 48 часов. Этот процесс сохранял задержку патчей до менее чем двух недель по сравнению с ежеквартальным циклом проприетарного поставщика.

Результаты и выгоды

Восемнадцать месяцев спустя после начала фазы 3 SysCon успешно перевела 80% своих активных продуктовых линеек на встроенные операционные системы с открытым исходным кодом.Измеримые результаты превзошли первоначальные прогнозы.

Снижение затрат на лицензирование и техническое обслуживание

Годовые затраты на лицензирование ОС снизились с 820 000 до 0 долларов. Сохранение для поддержки Tier-3 составляло 110 000 долларов в год — менее 14% от предыдущего бюджета лицензирования. Общая стоимость владения встроенной ОС, включая внутреннее инженерное время, снизилась на 62% за три года, а совокупная экономия к 2026 году, как ожидается, превысит 4 миллиона долларов.

Расширенные возможности кастомизации

Инженеры SysCon теперь могут модифицировать планировщики ядра, добавлять новые связывания дерева устройств и включать только точный требуемый стек драйверов для каждого продукта. Одна команда сократила время загрузки высокопроизводительного PLC с 47 секунд до 9 секунд, обрезая ненужные модули ядра и используя fitImage с минимальными initramfs. Другая команда перефакторировала сетевой стек для поддержки синхронизации TSN (Time-Sensitive Networking) для синхронизации на заводском уровне - функция, которую проприетарная ОС никогда не поддерживала. Возможность вносить исправления обратно в сообщество также улучшила отношения с поставщиками оборудования, которые начали предоставлять исходные файлы Device Tree для своих SoM.

Улучшение безопасности системы с помощью обновлений, управляемых сообществом

До миграции проприетарная ОС страдала от известной уязвимости переполнения буфера ядра, которую поставщик исправил только через 217 дней. На новой ОС с открытым исходным кодом команда SysCon смогла применить тот же тип исправления ядра в течение шести дней после публичного раскрытия, потому что патч LKML был выпущен в течение нескольких часов. Среднее окно уязвимости компании сократилось с 90 дней до 11 дней. Кроме того, SysCon внес вклад в защищенный слой Yocto, который был принят десятью другими промышленными компаниями, укрепив более широкую экосистему.

Повышение гибкости для будущих обновлений и интеграции

Отсоединяя ОС от аппаратного обеспечения, SysCon теперь может использовать новые системы на чипах (SoC), поскольку они становятся доступными, не дожидаясь проприетарного порта ОС. Компания уже интегрировала два новых SoC на основе ARM, которые снижают энергопотребление на 30% по сравнению с устаревшими конструкциями PowerPC. Тот же дистрибутив Yocto может быть повторно использован в PLC, шлюзах и дисплеях, упрощая управление цепочками поставок и уменьшая количество уникальных сборок программного обеспечения с 14 до 5. Будущие интеграции с облачными платформами IoT (AWS Greengrass, Azure IoT Edge) теперь просты, потому что эти фреймворки изначально созданы для Linux.

Уроки, извлеченные и рекомендации

Путешествие SysCon предлагает несколько идей для других компаний, рассматривающих аналогичный переход. Во-первых, не стоит недооценивать уровень абстракции аппаратного обеспечения — самой трудоемкой работой была не сама ОС, а переоборудование драйверов для незарегистрированных периферийных устройств. Во-вторых, инвестируйте в обучение до написания первой строки кода ядра; 12-недельный буткамп сэкономил месяцы проб и ошибок позже. В-третьих, план сертификации на ранней стадии — если ваши продукты требуют оценки функциональной безопасности, бюджета для выделенного сертификационного трека, который работает параллельно с разработкой. Наконец, охват сообщества: вклад обратно привел к лучшей поддержке со стороны поставщиков оборудования и более быстрые исправления ошибок от тех, кто поддерживает восходящий поток.

Для дальнейшего чтения, проект Yocto предоставляет подробные руководства по созданию пользовательских встроенных дистрибутивов Linux, в то время как документация Zephyr RTOS охватывает требования малого объема в реальном времени.Linux Foundation предлагает программы обучения и сертификации, которые могут ускорить готовность инженерной команды к работе с открытым исходным кодом.

Заключение

Переход SysCon Automation от запатентованной встроенной ОС к альтернативам с открытым исходным кодом демонстрирует, что при строгом планировании, поэтапном исполнении и сильной приверженности к развитию персонала преимущества намного перевешивают риски. Снижение общей стоимости владения ОС на 62%, резкое улучшение в плане изменения безопасности и вновь обретенная способность настраивать каждый уровень программного стека сделали SysCon более конкурентоспособным и более устойчивым. В то время как путешествие потребовало трех лет целенаправленных усилий, компания теперь работает на платформе, которая не только дешевле поддерживать, но и подготовлена к следующему десятилетию инноваций в области промышленной автоматизации. Компании, сталкивающиеся с подобной вилкой на пути, могут получить уверенность в этом случае: хорошо выполненная миграция к встроенным операционным системам с открытым исходным кодом, является не просто мерой экономии затрат - это стратегическая инвестиция в будущее - защита всего портфеля продуктов.