Application of Real-Time Monitoring to Scheduling Tasks with Random Execution Times
IEEE Transactions on Software Engineering
JEWEL: Design and Implementation of a Distributed Measurement System
IEEE Transactions on Parallel and Distributed Systems
Adaptive software fault tolerance policies with dynamic real-time guarantees
WORDS '96 Proceedings of the 2nd Workshop on Object-Oriented Real-Time Dependable Systems (WORDS '96)
Enhancing O-O Middleware to Become Time-Aware
Real-Time Systems - Special issue on challenges in design and implementation of middlewares for real time systems
Real-Time Behaviour in a Heterogeneous Environment?
WORDS '97 Proceedings of the 3rd Workshop on Object-Oriented Real-Time Dependable Systems - (WORDS '97)
Hi-index | 0.00 |
Future real-time applications are often closely integrated with the surrounding IT-infrastructure and often they have to interact with external services that often are implemented with CORBA interfaces. In such a scenario, static run-time prediction for scheduling and static guarantees of timing assertions is impossible since many non-predictable interaction elements influence execution times. To include CORBA objects in the real- time system, the system must be aware of their timing behavior. Monitoring run-time behavior is essential for future real-time applications that exhibit dynamic behavior since it can be used to dynamically generate estimates of execution times and remaining execution times, thus supporting dynamic scheduling and dynamic detection of violations of timing assertions. However, the accuracy of the generated estimates is crucial for the success of such an approach. Achieving sufficient accuracy is difficult if the variance of the monitored execution times is high. One main source of high variances in execution times are data dependencies in the program's code. We present an object-oriented, adaptable approach to monitoring execution times in object-oriented systems. Our monitoring approach reduces the influence of data dependencies by exploiting the object-oriented design. It includes monitoring and mathematical analysis concepts to continuously predict remaining execution times in order to early detect executions that will exceed their timing estimate, thus allowing to handle timing-faults before the actual deadline violation occurs. Furthermore, it allows to dynamically adjust the monitoring granularity and the depth of the mathematical analysis on a per object base, in order to achieve higher accuracy if necessary, thus trading monitoring overhead against accuracy.