Описание продукта
Операционная система МАКС предназначена для организации работы встраиваемых приложений и обеспечения доступа к системным ресурсам в условиях реального времени.
Общие сведения
- Программный интерфейс системы предоставляет разработчику полный набор сервисов для создания многозадачных приложений.
- Оригинальная разработка: в проекте не используются сторонние компоненты или фрагменты других ОСРВ.
- Целевые платформы: ARM Cortex M3/M4 (+FPU). Готовые проекты для отладочных комплектов демонстрируют возможности системы при работе на аппаратном обеспечении отечественных и иностранных производителей:
- АО «ПКК Миландр» (отладочные комплекты на базе микроконтроллеров серии 1986ВЕ9Х),
- STMicroelectronics (отладочная плата STM32F429I-Discovery).
- Поддержка средств разработки не только обеспечивает совместимость кода с используемым компилятором, но и включает сконфигурированные проекты для соответствующих IDE. Наличие стартового проекта даёт возможность начать разработку приложения «из коробки», а демо-проекты помогают быстро ознакомиться с функционалом и особенностями использования системы. В настоящий момент поддерживаются следующие средства разработки:
- Keil MDK-ARM 5 (µVision IDE),
- IAR Embedded Workbench for ARM 7.5 (EWARM).
- Система поставляется с комплектом документации, соответствующим требованиям ГОСТ 19.105-78, ГОСТ 19.106-78 и ГОСТ 19.504-79, и содержит руководство с описанием интерфейса системы, примерами использования системных сервисов и инструкциями по развёртыванию и настройке.
- Программный продукт зарегистрирован в Федеральной службе по интеллектуальной собственности (Роспатент) и проходит сертификацию в Федеральной службе по техническому и экспортному контролю (ФСТЭК) по четвертому уровню контроля недекларированных возможностей.
Ключевые характеристики
- предсказуемое время переключения контекста задач,
- отсутствие программных ограничений на количество обрабатываемых задач и объектов синхронизации,
- объектно-ориентированный программный интерфейс (API),
- конфигурирование через единую систему опций.
Архитектура
ОСРВ МАКС построена на основе модульной архитектуры с ядром и дополнительными компонентами.
Функциональные возможности
Планировщик:
- динамическое создание и удаление задач;
- планирование на основании приоритетов;
- поддержка режимов вытесняющей и кооперативной многозадачности;
- выбор режима выполнения задач — привилегированного или непривилегированного;
- режим энергосбережения (простое, или с переходом в спящий режим).
Объекты синхронизации:
- бинарные и считающие семафоры;
- рекурсивные и нерекурсивные мьютексы с поддержкой наследования приоритетов;
- события;
- очереди сообщений.
Использование MPU:
- для защиты стека задач от переполнения;
- для защиты памяти по нулевому адресу (обращения по указателю null);
- для защиты портов периферии от непривилегированного доступа.
Обработка прерываний в пользовательских задачах:
- активизация пользовательских задач-обработчиков из предопределённого универсального обработчика прерываний, не требующего дополнительной настройки;
- возможность назначить несколько задач-обработчиков для одного прерывания;
- управление последовательностью обработки через приоритеты задач-обработчиков.
Профилирование:
- измерение времени выполнения секций кода от точки до точки или в области видимости автоматической переменной;
- возможность автоматической настройки (повышение точности измерения за счет вычисления задержек собственной работы);
- формирование статистики замеров с группировкой секций по разделам (полное время выполнения всех секций с учётом и без учёта вложенности, минимальное/среднее/максимальное время выполнение секции, среднеквадратичное отклонение).
Механизм разделяемой памяти на уровне устройств (Shared Memory):
- синхронизация контекста задач между устройствами;
- обмен сообщениями внутри группы устройств.
Универсализированные интерфейсы ввода-вывода:
- единый интерфейс доступа к коммуникационным портам;
- единый интерфейс графической подсистемы;
- интерфейс сопряжения с библиотеками драйверов периферии микроконтроллера.