AADL Models Edition
AADL-BA-FrontEnd for OSATE 2 is an editor for AADL V2 behavior specifications, integrated and distributed with the reference AADL v2 editor: OSATE 2 (Open Source AADL Tool Environment) developped by the SEI. The behavior specification interpreted by this editor, is defined in the Behavior Model Annex of the AADL V2 standard. This annex was designed to model the behavior of AADL components using state machines. It defines syntactic, semantic, and consistency rules to ensure a given behavior specification is meaningful. The AADL-BA-FrontEnd plug-in checks that a given behavior specification respects these rules. It also implements a data type checker that verifies (according to strict rules close to the Ada type checking) the consistency of data manipulations (assignments, comparison, etc.).
An AADL V2 specification using the AADL-BA is given in the multi-modal ping-pong example.
Should you need any further information about TELECOM Paristech Eclipse plugins, included AADL-BA-FrontEnd, please do not hesitate to contact us at aadl [minus] eclipse [at] listes [dot] telecom [minus] paristech [dot] fr
Model Transformation and Code Generation
RAMSES (Refinement of AADL Models for Synthesis of Embedded Systems) is a model transformation and code generation tool that produces C code for ARINC653-compliant operating systems and OSEK-compliant operating systems. RAMSES interfaces with OSATE2 and proposes a command-line interface to OSATE2. RAMSES proceeds by refinement insofar as it produces a simplified version of an AADL model as an intermediate step towards code generation. This simplified model includes a behavior annex subclause that expresses the behavior resulting from the expansion of AADL components.
- Installation and Use with OSATE
- Installation and Use as a standalone application
- How to integrate plugins executable in ramses
- Continuous integration framework for RAMSES
- Sources and Bug tracking
Ocarina AADL toolsuite
Ocarina is our AADL toolsuite used to analyze, instanciate and optimize AADL models. It also has code generation features to automatically create code from AADL models targetting real-time embedded operating system. There is a complete list of Ocarina functionnalities:
- Model parser and pretty printer
- Model optimization
- Code generation in C (for the PolyORB-HI-C runtime)
- Code generation in Ada (for the PolyORB-HI-Ada runtime)
- Code generation for ARINC653 compliant systems (for the POK runtime)
- Support of both versions of the AADL (version 1 and 2)
Ocarina is currently used in both industry and research domains and was selected with success as a valid prototype platform for several projects (ASSERT, MOSIC, Flex-eWare and so on). Moreover, its model parsing facilities are used by third-party tools, like the Cheddar schedulability analysis tool.
Ocarina is distributed under the GNAT Modified GPL licence.
Ocarina Eclipse plug-in for Eclipse/Topcased
To interface Ocarina with Eclipse and Topcased, we designed a plugin that allows the use of Ocarina inside this modeling toolsuite. It can be installed through the Eclipse updates and make the use of Ocarina very easy (point and click style).
AADL Runtime Environment
POK ARINC-653 compliant AADL runtime
POK is an ARINC653-compliant AADL runtime. It provides isolation functionnalities to isolation partitions in terms of space and time. It uses the Ocarina generated code to configure partitions and provides functionnalities to execute code.
We are also involved in the writing of the ARINC653 annex of the AADL. We detail our modeling approach for ARINC653 systems, discuss validation patterns to enforce safety and security requirements. We also provide small examples to demonstrate our approach and the benefits of our toolset.
PolyORB-HI-C AADL runtime
PolyORB-HI-C is an AADL runtime used by Ocarina C code generator. This piece of software is a link between Ocarina generated code and the underlying runtime system (Linux, RTEMS, ...).
PolyORB-HI-C is POSIX/C compliant and runs on many operating systems (Linux, FreeBSD, Solaris, RTEMS, DSLinux). It has a low complexity (most of the algorithms have a complexity of O(1)) and a reduced memory footprint.
It is also used in the industry and was chosen as a valid execution platform in the Flex-eWare project.
- Download and installation
- Use PolyORB-HI-C, frequently asked questions
- Use Simulink with PolyORB-HI-C
PolyORB-HI-C is written under the GPL licence. It is also released with Ocarina.
PolyORB-HI-Ada AADL runtime
PolyORB-HI-Ada is an AADL runtime used by Ocarina Ada code generator. This piece of software is a link between Ocarina generated code and the underlying runtime system (Linux, RTEMS, ...).
PolyORB-HI-Ada is Ravenscar compliant and runs on many operating systems (Linux, FreeBSD, Solaris, RTEMS). It has a low complexity (most of the algorithms have a complexity of O(1)) and a reduced memory footprint. More, it enforces many restrictions on the Ada language. It was used with success in the ASSERT project.
PolyORB-HI-Ada is written under the GPL licence. It is also released with Ocarina.
All our examples are shipped in software releases. You can find a description of these examples on this page.
REAL is a language for constraints declarations on AADL (and AADL V2) language. REAL can be used either to evaluate some aspects of the model (such as memory occupation), or to verify that hard constraints are respected. It allows to have a fully AADL-centric developpement chain, from project specifications to effective system description.
There is a list of past projects. Unfortunately, we dont have the time to maintain all our projects and some of them are leaved unmaintained. This page contains a list of past projects.
- For AADL-BA-FrontEnd for OSATE2 and RAMSES: send a email to aadl-eclipse-devel [at] listes.enst.fr
Our research projects involve a team of several people. There is a list of who is or was involved in our projects :
- Etienne Borde
- Fabien Cadoret
- Julien Delange
- Sébastien Gardoll
- Olivier Gilles
- Jérôme Hugues
- Gilles Lasnier
- Laurent Pautet
- Xavier Renault
- Thomas Vergnaud
- Bechir Zalila