ZusammenfassungWeiche Echtzeitsysteme, die mit unbekannten, dynamisch gestarteten und gestoppten Anwendungen umgehen müssen, sind schwer zu analysieren in Hinblick auf ihre Planbarkeit. Ein solches System muss in der Lage sein, sich dynamisch an die tatsächlichen Anforderungen der Anwendungen anzupassen.
IV
AbstractSoft real-time systems that have to deal with unknown, dynamically loaded and stopped applications are hard to analyse for feasibility. Such systems must be capable to dynamically adapt themselves to actual requirements of applications. They further require mechanisms to control and resolve overload situations, which may arise while apps compete for common shared resources. Since estimations of actual execution times of activities are not available from the start, they have to be determined by the system during runtime. The estimations must be also adopted to fluctuations within the measured resource demands of the activities. In this PhD thesis an adaptive hierarchical scheduling model for a dynamic set of applications with fluctuating resource demands has been developed. On the lowest level the scheduler ensures correct execution of application tasks according to online approximations of their demands. On the higher levels isolation between the apps is provided while the scheduler continuously re-calibrates given capacities and performs local schedulability analysis for application tasks. In bottleneck situations an optimal degradation is applied by assigning one of different quality levels to the apps based on their resource estimations and priorities. Thereby, applications are activated in different operational modes. However, such reconfigurations must happen as rarely as possible, because they introduce an additional computational overhead for the system. With the proposed scheduling architecture the problem of proving schedulability is spatially partitioned and temporally distributed. Tests are performed portion-wise only when and where necessary. The model maintains feasibility until cost estimations violate custom safety buffers and resource bounds. In such cases a new optimal resource configuration is computed changing the quality of some apps. Periodic violations are also dedected automatically suppressing recurring reconfigurations in the system. The scheduling model was implemented with RTSJ and integrated within a soft real-time framework ARTOS. For evaluation of its scheduling mechanisms artificial apps were developed, which can produce real computational overhead within a platform following a certain load-profile. In our experiments new apps were run with a low priority until their modes were initially estimated. We were able to verify that (a) the system quickly establishes an optimal modes selection respecting priorities (b) it remains feasible when tasks reside within their tolerance limits (c)