Fachbereich Informatik  Abteilung
Betriebssysteme und Verteilte Systeme
Universitšt Oldenburg   

This is the Frontpage of the Project Ambrosia/MP

On this page ...

Project description

Ambrosia/MP is the successor of the realtime operating system Ambrosia. Ambrosia is the abbreviation for "A Modular Basic Realtime Operating System In Automotive units". The Appendix /MP means "for Multi Processors".

Ambrosia was developed at the University of Hildesheim in coorporation with the Volkswagen AG. The projectleader was Frank Plagge. The project ended at June 1997.


In comparison with classical computer systems there is great importance in embedded systems for most efficient use of available resources. Besides to the hardware cost this is a question of such systems size. In automotives there usually can be found more than one embedded system today in order to handle complex tasks like gear and engine control or driver assistance systems. It it foreseeable that in future the existing controllers in automotives will be connected through communication networks. So the available resources can be used in a distributed manner.
In the project Ambrosia/MP an operating system based on the system Ambrosia will be developed which provide mechanisms for optimal resource utilization within distributed embedded real-time systems. The work includes the introduction of a model used for schedulability analysis of real-time application and as a base for process partitioning. Furthermore in the project a framework will be created in which the whole engineering process can be embedded.

Distribution and scalability

One of the features of the already existing system Ambrosia is to provide runtime systems which are mostly adopted to the requirements of the respective applications. For this during the development process the runtime system is assembled based on so called components. Hence the arising system contains exactly the parts to handle the underlying hardware and to provide the system services required by the application. One goal of this project is to extend this feature to distributed systems. Therefore it is nessesary not only to configure the individual controllers but also the interconnection networks. With respect to the scalability Ambrosia/MP should support diverse communication structures. Therefore Ambrosia/MP can be used to develop real-time systems with a wide range of underlaying hardware. In addition the system will provide mechanisms to allow the synchronisation across controller boundaries.

Models, partitioning and schedulability

An essential problem within the development of real-time applications is the adherence to given time limits. Starting from a set of processes the task is to place these processes to the available controllers such that every process is able to match its deadline under all conditions. In real systems the determination of the schedulability is difficult if not impossible. One of the main problems is the integration of the system environment in such tests. Hence it is advisable to use models in which formal criteria can be obtained to determine if an application is schedulable or not. In this model each process is descibed by a set of properties like processing time, interarrival times and deadlines. Within the model rules can be established which provide a formal predication to the schedulability. Afterwards tests can be used to verify this predications. In this project such a model will be developed.

Development environment

The development of applications based on Ambrosia/MP is rather complex. Therefore in this project a framework should be provided to simplify this task. The primary goal is to create a platform which support the complete development of Ambrosia/MP applications. This platform consists of an interface between the system creation and the GUI (graphical user interface). With this interface it is easy to implement development tools within an integrated development environment.


*Research assistants  email
    Tobias Bruns (until 2/98)
    Ulf Fildebrandt (until 2/98)
    Torsten Müller (since 1/99)





Related work



Last change: 1999/09/24 Ingo Stierand