An Architecture-based Framework for Managing Adaptive Real-time Applications Ning Gui, Vincenzo De Florio, Hong Sun, Chris Blondia PATS group, University of Antwerp, Belgium, and IBBT, Ghent-Ledeberg, Belgium {ning.gui, vincenzo.deflorio, hong.sun, chris.blondia}@ua.ac.be Abstract—Real-time systems are increasingly used in dynamic changing environments with variable user needs, hosting real-time applications ranging in number and nature. This paper proposes an architecture-based framework for managing components’ dependence and lifecycle in an effective and uniform way. A real-time component runtime service is proposed here to maintain the global view, control the whole lifecycle of the components and keep existing real- time components' promised contracts in the face of run-time changes. This framework is designed to be easily extended with other constraint resolving policies as well as dependence descriptions languages. At end of this paper, the framework is tested by a simulated control application via adaptation and performance aspects. Keywords-component; adaptive software; run-time adaptation, architecture-based adapatation I. INTRODUCTION Traditional real-time systems such as process control systems typically work in closed and highly predictable environments. As long as those assumptions hold, this approach allows real-time requirements to be met with very high assurance. However, some soft real-time systems, such as smart devices, However, some soft real- time systems, such as smart devices, gains more and more popularity and increasingly operate in changing environments and with diverse user needs. In coping with dynamic and diverse requirements, such devices normally are equipped with open software system that able to host applications ranging in number and nature over time. In such system, the traditional waterflow approach for real- time application development: design, verify, map, and deploy could not work effectively as the system configuration will evolve during the whole system lifecycle. This open and evolving execution environment requires new approaches in building and manages real- time applications. Thorough off-line system analysis is forbidden by such dynamicity. However these installed applications are, to a certain extent, inter-dependent with one another, as one application may competing with other applications for the CPU, memory, networks or other system resources. Failed to deal with such dependence may lead to breaking applications’ real-time contracts which the system designer has supported to satisfy. Traditional RTOS and real-time schedulers based approach could not effectively cope with such complexity in dependence, as the scheduler itself has no way to get and could not understand that high level application dependences. This dependence can only be interpreted according to current context knowledge which involves many facts in the whole system – hardware, software and human. The RTOS is in a sense too “far away” from the application-level concerns to be able to take the right decisions on which components to select and which resources to dispatch. In order to support the dynamic changing set of real- time applications, from our experience in designing adaptive real-time systems, any effective solution should have the following three important aspects. First, those resource requirements across the currently hosted applications must be obtained and managed during run- time. Second, those component dependences, including the explicit functional dependencies and the implicit dependencies due to competing for the limited available resources, need to be explicitly modeled into architectural model across application domains. Third, the architectural model should be used to drive the lower-level managements of the corresponding real-time tasks. Our framework tackles these problems from different perspectives. In this paper, we introduce an architecture- based management framework - the D eclarative R eal-time Com ponent (DRCom) Framework, spanning through installed application domains. By eliciting each real-time component’ distinguishes attributes from its meta-data and its component management interface, an accurate global architecture model for current real-time system can be built, then this model is mapped to adjust low-level real-time task’s attributes and states according to plug- able adaptation policies. Benefited from the Service oriented architecture, this framework can be easily extended with other dependence resolving policies to deal with diverse system requirement. The effectiveness of our architecture is demonstrated both from qualitative and a quantitative point of view. The rest of this paper is structured as follows: in Section 2, a scenario shows the importance for inter real- time application dependence managements. Following section 3 gives a general overview of our architecture. Section 4 describes the component’s declarative real-time meta-data format design. Then in section 5, the component’s dependence resolving process is discussed. Then, our framework is evaluated from two aspects in Section 6. Section 7 provides a comparison with related works. The future work and our conclusions are introduced at the end of this paper. II. SCENARIO DESCRIPTIONS To better illustrate all the complexities in introducing the context knowledge into the application composition process, we introduce an example scenario that will be revisited several times through the course of this paper.