Dev48
ЯЗЫК
  • О нас
  • Услуги
  • Индустрии
  • Технологии
  • Статьи
  • Контакты
Забронировать звонок
    Главная/Статьи/Determinizm urovnya mcu v qnx sdp 80 s ispolzovaniem motionwise
Dev48

© 2026 · All rights reserved.

Детерминизм уровня MCU в QNX SDP 8.0 с использованием MotionWise

Источник: QNX

Детерминизм уровня MCU в QNX SDP 8.0 с использованием MotionWise

Источник: QNX

Узнайте, как MotionWise Schedule и QNX SDP 8.0 обеспечивают детерминизм уровня MCU, планирование в реальном времени и упрощенную миграцию AUTOSAR для программно-определяемых транспортных средств (SDV).

25 сентября 2026 г.

По мере развития программно-определяемых транспортных средств автомобильные команды все чаще выходят за рамки традиционных архитектур на базе MCU. Современные операционные системы, такие как QNX SDP 8.0, предоставляют существенные преимущества для автомобильных платформ нового поколения, обеспечивая сервис-ориентированные архитектуры, упрощенное развертывание программного обеспечения и более гибкие обновления приложений. Однако остается одна критическая проблема: как добиться такого же детерминированного поведения по времени при переносе приложений с микроконтроллеров Classic AUTOSAR на микропроцессоры? Это поддерживается MotionWise Schedule, поскольку он предоставляет механизмы детерминированного планирования, используя ту же семантику задач, к которой разработчики привыкли в Classic AUTOSAR.

Дилемма миграции: современные платформы против детерминированного тайминга

OEM-производители и поставщики первого уровня переходят от доменно-специфичных и сигнально-ориентированных архитектур к централизованным, сервис-ориентированным вычислительным платформам на базе QNX SDP 8.0. Эти платформы предоставляют мощные возможности, которых трудно достичь в классических средах MCU:

  • Независимое развертывание и обновление приложений
  • Автоматическая изоляция процессов с помощью MMU
  • Улучшенная масштабируемость для будущих функций автомобиля

Эти преимущества делают платформы на базе POSIX привлекательными для архитектур транспортных средств следующего поколения. Однако миграция существующего устаревшего программного обеспечения часто оказывается гораздо сложнее, чем просто перекомпиляция кода, из-за различий в моделях выполнения, среди прочего.

Почему приложения Classic AUTOSAR ведут себя иначе

Приложения Classic AUTOSAR построены вокруг концепции периодических задач и циклов управления. Программные компоненты (SWC) содержат исполняемые модули (runnables), которые запускаются средой выполнения AUTOSAR (RTE) в соответствии с четко определенными временными ограничениями.

Разработчики полагаются на такие характеристики, как:

  • Низкий джиттер активации
  • Предсказуемое периодическое выполнение
  • Детерминированная активация задач
  • Четко определенный порядок выполнения
  • Короткие сроки выполнения для критически важных задач

На протяжении многих лет приложения тщательно оптимизировались и проверялись на основе этих предположений.

Когда эти приложения переносятся в среду на базе QNX, разработчики быстро обнаруживают, что она ведет себя иначе.

Пример инициализирующих и периодических исполняемых модулей, используемых в Classic AUTOSAR RTE

Пример функций Init и Main для VehicleStateEstimation (они будут повторно использованы в процессе QNX)

Проблема планирования

QNX SDP 8.0 никогда не проектировалась для воспроизведения семантики выполнения Classic AUTOSAR.

Хотя операционная система предоставляет необходимые возможности планирования в реальном времени, она выполняет потоки и процессы, а не исполняемые модули в стиле AUTOSAR.

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

Команды разработчиков часто сталкиваются с:

  • Увеличенным джиттером выполнения
  • Менее детерминированными шаблонами активации
  • Другим поведением при приоритизации
  • Проблемами с быстрыми циклическими нагрузками с жесткими сроками
  • Потерей временных допущений, заложенных в существующее программное обеспечение
  • Следствием часто является обширная переработка приложений.

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

В некоторых проектах эта проблема даже приводит к противоположному решению: возврату существующих приложений на мощные платформы MCU, поскольку среды Classic AUTOSAR лучше соответствуют желаемому поведению по времени.

Преодоление разрыва с помощью MotionWise Schedule

MotionWise Schedule позволяет командам разработчиков получить преимущества QNX SDP 8.0, обеспечивая при этом характеристики детерминированного выполнения, традиционно ассоциируемые с Classic AUTOSAR. В среде Classic AUTOSAR исполняемые модули являются фундаментальными единицами выполнения внутри программных компонентов. Среда выполнения AUTOSAR отвечает за активацию этих модулей в соответствии с настроенными событиями и временными ограничениями.

Вместо того чтобы заставлять приложения адаптироваться к «потоково-ориентированной» модели выполнения и переделывать программные компоненты в многопоточные процессы, MotionWise Schedule вводит концепцию выполнения с учетом времени, которая координирует действия в соответствии с требованиями к таймингу, и поддерживает семантику исполняемых модулей: MotionWise Schedule может выполнять рабочие нагрузки, используя привычную модель на основе исполняемых модулей. Эта модель обеспечивает более детерминированное планирование и координацию выполнения рабочих нагрузок.

Что это значит для разработчиков

MotionWise Schedule предлагает функции, которые традиционно предоставляются средой выполнения Classic AUTOSAR, включая:

  • Периодическую активацию исполняемых модулей
  • Координацию выполнения с учетом времени
  • Детерминированное поведение планирования
  • Управление временными ограничениями выполнения
  • Согласованное триггерное выполнение программных функций во время работы

В результате команды разработчиков могут повторно использовать значительные части своей существующей логики приложений, получая при этом доступ к преимуществам QNX SDP 8.0. Существующий дизайн приложения может быть в значительной степени сохранен.

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

Выполнение тех же исполняемых модулей с помощью MotionWise Schedule в QNX без необходимости управления потоками и временем в коде

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

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

Пользователи могут легко настроить исполняемый модуль по периоду, бюджету, разрешенным ядрам процессора и многим другим параметрам (джиттер, сроки и т. д.) в MotionWise Schedule. Параметры могут быть изменены интегратором без изменения кода.

оригинал

Пример цепочки вычислений с MotionWise Schedule в QNX

Использование преимуществ QNX без ущерба для детерминизма

Способность сохранять поведение по времени напрямую влияет на экономику проекта. MotionWise Schedule значительно снижает инженерные затраты и уменьшает риски при архитектурных переходах.

Это снижает барьеры для миграции и помогает организациям уверенно двигаться к следующему поколению программно-определяемых транспортных средств. Вместо того чтобы фокусировать инженерные ресурсы на перереализации логики планирования, команды могут сосредоточиться на предоставлении функциональности автомобиля и инновациях.

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

MotionWise Schedule обеспечивает именно это.

Заключение

Переход с платформ Classic AUTOSAR на архитектуры на базе QNX открывает огромные возможности для масштабируемости, удобства обслуживания и гибкости развертывания программного обеспечения. Однако различия в поведении планировщика часто создают серьезное препятствие для проектов миграции.

MotionWise Schedule решает эту задачу, внедряя детерминированное выполнение с учетом времени на платформах QNX и поддерживая модели выполнения на основе запускаемых модулей (runnables), знакомые разработчикам AUTOSAR.

Результатом является практический путь миграции, который сохраняет предсказуемое временное поведение, минимизирует необходимость переработки программного обеспечения и позволяет автомобильным командам модернизировать свою архитектуру без ущерба для производительности в реальном времени.

Хотите узнать, как MotionWise Schedule может упростить вашу миграцию с Classic AUTOSAR на QNX? Свяжитесь с командой TrustMotion и узнайте, как MotionWise Schedule может ускорить ваш переход на автомобильные платформы следующего поколения.

Эта статья была написана в соавторстве Анерудом Атхреем (QNX) и Тамашем Лишбауэром, менеджером по продукту в TrustMotion.

← Все статьи