Search
Quick access
News:
25. April 2013
Volume 303 in Publication Series pubilshed
„Sicherstellen der Abrufe bei Automotive-Zulieferern mit minimalen Kosten unter besonderer Berücksichtigung von ...
DERty DREAMS
PrintDistributed Extensible Application Management System: Component-based distributed real-time operating systems and software synthesis
Embedded Systems are being used more and more during the recent years in a vast spectrum of applications. Moreover, it is not rare to have a network of these systems. Examples of these systems are found in cars, PDAs, mobile telephones and sensor networks. Thereby, the Real-Time Operating Systems (RTOS) are taking tasks which are ever more extensive and complex. In order to reach flexibility as well as efficiency, the RTOS needs to be modular, dynamically reconfigurable and, if necessary, distributed.
Detailed Information
Self-optimizing
The goal of the project C2 of the SFB 614, in cooperation with the working group of Professor Rückert (HNI), is the development of an RTOS for self-optimizing systems. A special challenge of such an RTOS is the support of either strongly different application classes or changing application profiles. In order to provide the services for such applications in an optimized way, the designed RTOS has the capacity to adapt itself during the run-time to the current requirements of the application in a resource-efficient manner. The RTOS analyses the current conditions/constraints and optimizes itself independently by means of reconfiguration. Despite the reconfiguration activities, at each time, a safe system is ensured where the deterministic treatment of all safety-relevant tasks under adherence to the given time constraints has to be guaranteed.
The Flexible Resource Manager
Part of our self-optimizing RTOS is a Flexible Resource Manager. This manager optimizes the resource allocation of the applications and services of the system. Specifically it puts unused resources (from services and applications) in one node at other application's disposal. A special mechanism, which is vicarious to the acute stress response of the human body, enables the flexible release of resources for the handling of emergencies in self-optimizing mechatronic systems.
Current Research
In the current research work of the C2 sub project, these resources for self-optimizing agents are transparently made available to other nodes in a network of controllers. Therefore, the concept of the local optimization of an operating system instance is extended to an RTOS network. The pursued approach is based on decentral ant algorithms.
Another main topic is the development of a run-time verification mechanism to ensure the security of applications and services of the operating system during on line reconfiguration and optimization. This mechanism is integrated into the RTOS. Modern embedded systems (e.g., mobile phones and PDAs) increasingly require more computational performance and flexibility, since one single platform must give support for different kind of applications which may dynamically arrive into the system. Potential candidate to give support for such systems is the so called hybrid architecture, which includes CPU and FPGA as computation resources. The RTOS executing on such platforms, however, needs to provide suitable methods and infrastructure for managing and using the resources in an efficient manner. As a result from a close cooperation with the DERty-RuSt research team, we include in our DREAMS RTOS the support for such an architecture to optimally use the available resources. The RTOS is able to reconfigure itself on top of the underlying hybrid architecture in order to respect the current application requirements.
1. The cabbage white butterfly serves as a model for artificial systems. (Foto: Fotolia Paylessimage)
2. Inspired by the swarm intelligence of the leaf-cutting ant, we are researching new approaches to self-organization and self-coordination of technical systems. (Foto: Alex Wild)
Organic Computing
A large spectrum of novel applications is enabled by the development of embedded systems for energy-constrained, wireless networks, nevertheless at the same time the development of innovative concepts is required. Embedded systems with a small footprint can be scattered over an area in order to build a wireless sensor network. In our working group we are designing an operating system called NanoOS which supports these kinds of networks. In order to deal with the hardware constraints, the operating system services are distributed over the nodes and used collectively.
Aside from hardware limitations there are two more severe challenges that impact the development of our NanoOS. First, in an ad hoc scenario, nodes on which our operating system is deployed, can move quickly. Second, the migrated OS services often have real-time requirements.
The first challenge is addressed by a service migration which dynamically reacts to changes within the network. The decision of which service to be migrated to which other node is based on the self-optimization algorithms from the field of organic computing, using behavior patterns observed in nature. The advantage of algorithms from this area is that they are based on local information and interaction, thus requiring only a relatively low amount of resources. At the same time, they facilitate the development of a system which dynamically self-adapts to its environment. Therefore, in such a scenario, the foraging behavior of ants is an inspiration for our developed techniques. In order to make NanoOS scalable to large network sizes, we developed a clustering algorithm which is also based on self-organization.
The restrictions of energy- and resource-constrained dynamic networks as well as the second challenge (real-time requirements of the migrated services), require an efficient and prioritizable use of wireless communication. Therefore, our development aims at employing algorithms from the area of organic computing within the protocol stack for connection management and routing while ensuring the satisfaction of QoS requirements.
Another work explores both topological and algorithmic aspects for wireless telephony networks. There are special challenges associated with designing and implementing functionality that users became acquainted with from wired systems in the domain of wireless networks where there are only resource-constrained mobile nodes. This work is done in a close relationship with Siemens Communications in Munich and Witten.
Load Balancing
Grid Computing
Today, Grid Computing is a widespread approach that enables the calculation of high complex applications. In order to perform Grid Computing, a huge number of powerful computing resources are coupled to be used as a uniform resource.
The Meta Load Balancer
For optimizing data parallel applications the Grid middleware mLB (meta Load Balancer) has been developed. mLB is a tool, that supports applications developed for running on parallel architectures. At runtime, mLB analysis the heterogeneous, dynamic structure of the Grid environment. Therefore it is able to respond directly to changing situations, e.g. changing load situations of the available resources. The application's load is distributed over the computing units proportionally to their available capacities. The decision, between which computing units load will be migrated, is based upon a hierarchical structure. This structure is built by means of the information resulting from the network analysis. Thus, it reflects the current network status. One goal by doing so is to migrate load between nodes with as fast as possible connections. By using fast connections, the costs for load balancing, especially migration costs, can be minimized. On the other hand, the distribution of load accordingly to the available capacities of the computing nodes leads to an optimization of the application's runtime. mLB is a distributed, dynamic and adaptive tool, that is characterized by its simple usage. It enables an efficient runtime behavior of applications running in the Grid.
High Performance Reconfigurable Computing (HPRC)
An interesting new research field is the High Performance Reconfigurable Computing (HPRC), which results from the fusion of the High Performance Computing (HPC) and the Reconfigurable Computing (RC). Our platform consists of a dedicated PC-Cluster whose computing nodes are equipped with FPGA cards. The heterogeneity of this system is characterized by the different arithmetic and logic units (processors on one side and FPGAs on the other side). This heterogeneity represents a huge challenge in the development of methods to ensure an efficient execution of the applications. Therefore, we develop an operating system extension that determines locally the distribution of the functional components on the arithmetic and logic units at run-time. A decentralized approach is pursued, in which the decisions are made locally on each computing node. The criteria for the decisions are the system utilization and the characteristics of the application.



