An embedded hardware-software system is adaptive, if it can modify its behavior and/or architecture to changing requirements. Adaptivity is increasingly important as the complexity and autonomy of embedded systems increases. Adaptivity is required both off-line at design-time and on-line at run-time. Off-line adaptivity is required to handle changing system specifications and to support platform-based or product-family based development. On-line adaptivity is required to be able to dynamically respond to changing conditions and contexts and through this improve performance and resource utilization. The changes can involve different types of resource requirements, changing system objectives, and changing external conditions.
Adaptivity is a cross-cutting system characteristic that affects both hardware and software. At the software-level adaptivity is mainly concerned with flexible and adaptive resource scheduling, e.g., CPU time scheduling. At the hardware-level adaptivity includes both adaptation of operation modes, e.g., supply voltage and clock frequency, processor instruction sets, and dynamic management of hardware resources, e.g., processing elements and memory.
The cross-cutting nature of adaptivity implies that it affects all aspects of embedded system design. The high-level objective of this thematic activity is therefore to integrate the efforts and combine the competences related to adaptivity in embedded systems within the four thematic clusters. The main way of achieving this is to create suitable interfaces, meeting points, and research contacts between the partners. Another important objective for this activity is to define the ontology for adaptivity in embedded systems, i.e., the relationship between adaptivity, reconfigurability, flexibility, sustainability, and robustness, and the relationship between adaptivity and predictability.
Although partners from all the four thematic clusters are part of this activity, it is partners from the Operating Systems and Network cluster that dominate. Hence, the majority of the partners are working on issues related to adaptive resource management, including CPU scheduling and QoS management; adaptive networking, and operating and middleware support for adaptivity. The use of feedback and control-theoretical approaches in order to achieve adaptivity is also studied by several partners. However, the activity also contains partners with interests in modeling of adaptive processes and applications, hardware (run-time) reconfigurability, and timing analysis support for adaptability.