Embox () — свободная кросс-платформенная операционная система реального времени (RTOS), разрабатываемая для встроенных систем.
Архитектурно-зависимые части вынесены в отдельные модули, что упрощает процесс портирования на новые платформы. Основная идея Embox использовать ПО Linux в более безопасном и предсказуемом (real-time), а также менее ресурсо- и энергопотребляющем окружении, включая микроконтроллеры.
Основные принципы Одной из основных особенностей исходных кодов системы embox является их максимальная структурированность, позволяющая представить ядро как набор взаимосвязанных модулей, каждому из которых можно задать требуемые параметры. Это дает возможность тонко настроить систему и создать образ, нацеленный на конкретную задачу, будь то средство для тестирования аппаратного обеспечения, либо полноценная операционная система с виртуальной памятью, включающая сетевую и файловую подсистемы. К тому же такой принцип построения упрощает отладку отдельных модулей системы, а также портирование на новые платформы.
Если сравнить с популярной FreeRTOS, то в FreeRTOS нет POSIX-совместимостиХотя развивается проект FreeRTOS-plus-POSIX , в котором, к 2025 году утверждается, что уже реализовано 20% POSIX-функциональности., и абсолютно любое приложение «пишется с нуля», реализуя принцип «разработчик полностью реализует и контролирует всю систему». В Embox же можно портировать существующие библиотеки и фреймворки из POSIX/Linux-мира, что приведет, возможно, к меньшей ресурсоэффективности, чем в случае с FreeRTOS, но сильно сэкономит время разработки и поддержки. Кроме переиспользования кода, полезна также возможность разработки и тестирования макетов на десктопных системах. Так, например, можно переиспользовать как библиотеки для характерной функциональности встраиваемых систем, такие как libmodbus (телеметрия), pjsip (телефон), так и фреймворки свойственные скорее десктопным системам, например, графический интерфейс через Nuklear или Qt, или библиотеки компьютерного зрения, такие как OpenCV.
Поддерживаемые платформы На сегодняшний день Embox работает на следующих процессорных архитектурах: SPARC v8 (LEON3) ARM«Портирование ОС на Aarch64 »«Embox RTOS на Raspberry Pi »«SIP телефон на STM32F7-Discovery »«О кэшах в микроконтроллерах ARM »«Отечественный процессор от компании ЭЛВИС » RISC-V«Embox отправляется на Vostok » MicroBlaze x86 MIPS PowerPC E2K«Embox начинает восхождение на Эльбрус »«Восхождение на Эльбрус — Разведка боем. Техническая Часть 1. Регистры, стеки и другие технические детали »«Восхождение на Эльбрус — Разведка боем. Техническая Часть 2. Прерывания, исключения, системный таймер »«Embox — открытая ОС на Эльбрусе »
Модель разработки Разработка ведётся в тесном сотрудничестве с кафедрой Системного Программирования Математико-Механического факультета СПбГУ. В частности, проект Embox используется для получения студентами практических навыков в различных дисциплинах, таких, как: архитектура операционных систем, встроенные системы, программирование микроконтроллеров и так далее«Итоги годовых студпроектов Мат-меха СПбГУ»«Как с помощью трех открытых проектов написать диплом ». Кроме технических дисциплин, проект используется как площадка получения опыта студентами в управлении IT-проектами.
Благодаря открытому коду системы, на базе проекта проводятся различные исследования в областях построения ОС и вычислительных систем.
Embox применяется в различных коммерческих проектах в областях: АСУ, встроенных и телекоммуникационных системахКак мы строили систему аварийной сигнализации дата-центра.
См. также — другая RTOS, ориентированная на перенос linux-приложений на микроконтроллеры.
Примечания
Литература
запись и материалы этого доклада с конференции. «Организация поддержки 3d-ускорения в ОСРВ на основе проектов с открытым кодом», доклад на конференции OSDAY-2018. Запись и материалы этого доклада. Запись и материалы этого доклада. .
Запись и материалы этого доклада. Запись и материалы этого доклада.
Запись и материалы этого доклада. Запись и материалы этого доклада.
«Embox — российская ОС для цифровых устройств», доклад на конференции OSDAY-2023. «Повышение безопасности конечных систем с помощью специального языка описания модулей. Опыт Embox», доклад на конференции OSDAY-2024.
Ссылки Официальный сайт Страница проекта на Open Hub Свободные проекты России 2010 года — embox — Участие в конкурсе linux-format 2010
Категория:Операционные системы СССР и России Категория:Единый реестр российского ПО Категория:Автоматизация Категория:Операционные системы реального времени Категория:Встраиваемые операционные системы Категория:Свободное программное обеспечение, написанное на Си Категория:Математико-механический факультет Санкт-Петербургского государственного университета