понедельник, 21 ноября 2016 г.

AMALTHEA - Разработка мульти-ядерных систем на основе моделей

 AMALTEA - набор инструментов на базе Eclipse для разработки мульти-ядерных систем на основе моделей. В центре данных инструментов находится модель для описания ПО и аппаратуры, которая позволяет решать задачи автоматического анализа и размещения ПО для мульти-ядерных систем.

Данный набор инструментов позволяет решать такие задачи, как 
- распределение функциональности ПО по потокам
- распределение потоков по ядрам 
- симуляция параллельной работы ПО с сохранением и анализом логов 
Изначально проект AMALTEA возник в автомобильной промышленности.
 Результаты проекта далее планируется развивать в рамках Eclipse, как универсальную технологию разработки много-ядерных систем, без привязки к автомобильной промышленности.
Для этих целей создан уже проект Eclipse APP4MChttps://projects.eclipse.org/projects/technology.app4mc
Меня прежде всего заинтересовала мета-модель, предназначенная для описания ПО.
В центре данного набора инструментов находится модель (EMF) для описания программных систем. Общая модель включает несколько разделов (под-моделей)
В том числе она включает компонентную модель ПО, которая определяет компоненты с портами, экземпляры компонентов и коннекторы

Компонент ссылается на элементы модели ПО

 В рамках компонентной модели для определения интерфейсов используется Franca IDL. Вот мета-модель компонентной модели. Здесь мета-тип FInterface как раз из Franca IDL EMF model



Приведу еще несколько скриншотов иерархического браузера модели
с отображением различных частей модели ПО

Моделирование задач ПО

Моделирование sheduler-а операционной системы
 Моделирование аппаратуры
В составе примеров к AMALTHEA есть модель, рассмотренная в данной монографии

A timing model for real-time control-systems and its application on simulation and monitoring of AUTOSAR systems
https://oparu.uni-ulm.de/xmlui/handle/123456789/1770


Чтобы детальнее познакомиться с моделью данных и функциональностью инструментов нужно скачать дистрибутив 
Модель данных описана в документации (Меню Help)

Комментариев нет:

Отправить комментарий