OpenComRTOS - Википедия - OpenComRTOS
Эта статья поднимает множество проблем. Пожалуйста помоги Улучши это или обсудите эти вопросы на страница обсуждения. (Узнайте, как и когда удалить эти сообщения-шаблоны) (Узнайте, как и когда удалить этот шаблон сообщения)
|
Просмотр приложения OpenComRTOS | |
Разработчик | Altreonic NV |
---|---|
Семейство ОС | Распределенное микроядро |
Рабочее состояние | Текущий |
Исходная модель | Лицензия на исходный код |
изначальный выпуск | 2008 |
Последний релиз | 1.6 / август, 2014 г. |
Маркетинговая цель | Встроенные системы |
Менеджер пакетов | MSI-файл пакета OpenComRTOS |
Платформы | Freescale PowerPC, Texas Instruments C66xxx DSP, РУКА, XMOS, MicroBlaze, ЛЕОН, NXP CoolFlux DSP, Melexis MLX16, Win32, Linux |
Ядро тип | сетецентрический режим реального времени Микроядро MP |
Дефолт пользовательский интерфейс | Среда разработки на хост-машине |
Лицензия | Двоичный - Исходный код - Открытые технологии |
Официальный веб-сайт | www.altreonic.com |
OpenComRTOS коммерческая сетецентрическая, формально развитая операционная система реального времени, направленная в первую очередь на встроенные системы рынок.
Обзор
OpenComRTOS это сетецентрическая ОСРВ (Операционная система реального времени ), который был разработан с использованием Формальные методы. Он имеет такие функции, как возможность прозрачной поддержки гетерогенных многопроцессорных систем, независимо от типа процессора (16-битный, 24-битный, 32-битный, 64-битный) и среды связи (общая память, шины, двухточечные каналы или виртуальные ссылки поверх существующих механизмов связи). Типичный размер кода на 32-битном целевом процессоре составляет около 5 КиБ. OpenComRTOS основан на парадигме мета-моделирования Взаимодействующие лица. В OpenComRTOS единицей исполнения является "Задача" (функция со своим локальным рабочим пространством или стеком). Сущности задач синхронизируются и обмениваются данными с помощью промежуточных «Хабы» сущности, которые отделены от взаимодействующих Задач. Хабы формально моделируются как «Охраняемые действия». Текущая реализация обеспечивает функциональность традиционных сервисов RTOS, таких как События, семафоры, порты, FIFO, ресурсы, пулы пакетов и пулы памяти. Пользователь также может создавать свои собственные типы концентраторов. OpenComRTOS использует единую архитектуру с задачей ядра, задачами драйвера и задачами приложения, каждая из которых имеет порт ввода задачи. Тот же интерфейс используется для подпрограмм обслуживания прерываний. Базовая архитектура полагается на использование приоритетных Коммутация пакетов при этом связь и маршрутизация являются частью базовых системных служб. Одним из результатов является то, что исходный код задач не зависит от сопоставления задач и концентраторов с узлами обработки в целевой системе.
История
Первоначальной целью разработки OpenComRTOS было предоставление среды выполнения программного обеспечения, поддерживающей согласованную и унифицированную методологию системного проектирования, основанную на Взаимодействующие лица. Первоначально это было разработано Общество открытых лицензий с 2005 года, а с 2008 года дальнейшее развитие и коммерциализация Altreonic. Ранее разработанная ОСРВ под названием Virtuoso[1][2][3][4][5] служил ориентиром. Virtuoso была распределенной ОСРВ, разработанной Eonic Systems до тех пор, пока технология не была продана Wind River Systems в 2001 году. Его общая функциональность прозрачной параллельной обработки (называемая Виртуальный одиночный процессор runtime model) была главной движущей силой для ее усовершенствования.[6][7] OpenComRTOS концептуально представляет собой четвертое поколение Virtuoso, хотя это была разработка для чистой комнаты. Виртуозная ОСРВ возникла в новаторском INMOS Транспьютер, частичная аппаратная реализация МАШИНА. Hoare с Связь последовательных процессов (CSP) алгебра процессов.Самые сложные приложения:[нужна цитата ]
- Система разведки нефти с 12000 процессорами с микроконтроллерами, DSP с фиксированной и плавающей запятой и хостом Linux в одной сети.
- Гидролокатор с 1600 DSP с плавающей запятой.
- Розетта и Джотто Космические миссии ЕКА.
- Преобразование приложения на 400000 строк, работающего в ОСРВ в стиле POSIX, в OpenComRTOS.
Формальный подход к развитию
При разработке OpenComRTOS использовался систематический, но повторяющийся процесс разработки. Требования и спецификации определены, модели разработаны в Лесли Лэмпорт с Временная логика действий (TLA +), а затем модель проверяется с помощью соответствующей программы проверки модели TLC. На основе этих моделей был написан код, а затем третье лицо создало новые модели в TLA +, чтобы убедиться, что реализация по-прежнему изоморфна. Таймер и связанные с ним функции тайм-аута для служб были проверены на модели с помощью Проверка моделей Уппа. В 2011 году Springer опубликовал книгу по проекту OpenComRTOS.[8]
OpenComRTOS Designer: среда разработки и инструменты
OpenComRTOS поставляется с рядом инструментов. Визуальный дизайнер представляет собой среду визуального моделирования, в которой пользователь задает топологию узла и топологию приложения в графическом виде. Из этих диаграмм генерируется конкретная модель времени выполнения приложения. Код конкретного приложения предоставляется в ANSI-C для каждой задачи. Выполнение во время выполнения, а также межпроцессорные взаимодействия визуализируются с помощью Трассировщик событий. А System Inspector позволяет считывать и изменять структуры данных.Дополнительные модули - это модули хост-сервера (они позволяют любой задаче получить доступ к службам хост-узла) и Безопасная виртуальная машина для C. Последний требует около 3 КиБайт (10 КиБайт для программы и данных) и позволяет динамически загружать двоично-скомпилированный код C во время выполнения.
Портативность
OpenComRTOS был разработан для встраиваемых систем и написан на портативном ANSI-C, за исключением переключения контекста и интерфейсов ISR. OpenComRTOS был перенесен на следующие цели:Freescale PowerPC, Texas Instruments C66xx DSP, Melexis MLX16, ARM Cortex M3 / 4, Xilinx MicroBlaze, LEON3, NXP CoolFlux DSP и для MS-Windows и Linux. Последние версии позволяют прозрачную интеграцию хост-узлов и служат также в качестве систем кросс-разработки и моделирования. Поскольку ядро RTOS идентично для одно- и многопроцессорных узлов, для поддержки многопроцессорной системы требуется только написать небольшой драйвер уровня задачи, который может отправлять и получать пакеты.
OpenComRTOS предоставляется в виде двоичного кода, исходного кода и лицензий на открытые технологии. Последний предоставляет формальные модели, проектную документацию, исходный код и наборы тестов.
Рекомендации
- ^ E, Verhulst. «За пределами машины фон Неймана: коммуникация как движущая парадигма проектирования MP-SOC от программного обеспечения до оборудования». Kluwer Academic Publishers Hingham, MA, США, Сети на чипе, 1993, Страницы: 217–238
- ^ E. Verhulst. «Виртуоз: обеспечение субмикросекундного переключения контекста на dsps с помощью выделенного наноядра». Международная конференция по приложениям и технологиям обработки сигналов, Санта-Клара, сентябрь 1993 г.
- ^ E. Verhulst. «Помимо передачи данных: полностью распределенная семантика в модели программирования виртуального однопроцессорного процессора Virtuoso и ее реализация на стандартных параллельных DSP». В Труды WoTUG-20: Параллельное программирование и Java, 1997, страницы 77–86.
- ^ E. Verhulst. «Непоследовательная обработка: устранение семантического разрыва, оставленного архитектурой фон Неймана». В Системы обработки сигналов СИПС’97, страницы 35–49.
- ^ E. Verhulst. «Обоснование распределенной семантики как топологической независимой методологии проектирования встроенных систем и ее реализации в Virtuoso RTOS». Автоматизация проектирования встраиваемых систем, 2002, 6:277–294. Дои:10.1023 / А: 1014018820691.
- ^ Э. Ферхюльст, Г. де Йонг. «OpenComRTOS: сверхмаленькая сетевая встраиваемая ОСРВ, разработанная с использованием формального моделирования». В Материалы 13-й международной конференции SDL Forum по проектированию надежных систем, SDL’07, страницы 258–271, Берлин, Гейдельберг. Springer-Verlag.
- ^ Эрик Верхюльст, Гьялт де Йонг, Виталий Межуев. «Промышленный пример: подводные камни и преимущества применения формальных методов для разработки сетецентрической ОСРВ». Куэльяр, Дж., Майбаум, Т., и Сере, К., редакторы, FM 2008: Формальные методы, том 5014 конспектов лекций по информатике, страницы 411–418. Springer Berlin / Heidelberg.
- ^ Формальная разработка сетецентрической ОСРВ: разработка программного обеспечения для надежных встроенных систем Эрик Ферхюльст, Раймон Т. Буте, Хосе Мигель Сампайо Фариа и Бернхард Х.С. Спут (ISBN 978-1-4419-9735-71-е изд., 2011, XVII, 219 с. 54 иллю