DocumentCode :
569347
Title :
Time-Triggered Program Self-Monitoring
Author :
Bonakdarpour, Borzoo ; Thomas, Johnson J. ; Fischmeister, Sebastian
Author_Institution :
Sch. of Comput. Sci., Univ. of Waterloo, Waterloo, ON, Canada
fYear :
2012
fDate :
19-22 Aug. 2012
Firstpage :
260
Lastpage :
269
Abstract :
Runtime monitoring aims at analyzing the well-being of a system at run time in order to detect errors and steer the system towards a healthy behavior. Such monitoring is a complementary technique to other approaches for ensuring correctness, such as formal verification and testing. In time-triggered runtime monitoring, a monitor runs as a separate process in parallel with an application program under scrutiny and samples the program´s state periodically to evaluate a set of properties. Applying this technique in a computing system results in obtaining bounded and predictable overhead. Gaining such characteristics for overhead is highly desirable for designing and engineering time-critical applications, such as safety-critical embedded systems. However, a time-triggered monitor requires certain synchronization features at operating system level and may suffer from various concurrency and synchronization dependencies and overheads as well as possible unreliability of synchronization primitives in a real-time setting. In this paper, we propose a new method, where the program under inspection is instrumented, so that it self-samples its state in a periodic fashion without requiring assistance from an external monitor or internal timer. We call this technique time-triggered self-monitoring. First, we formulate an optimization problem for minimizing the number of points in a program, where self-sampling instrumentation instructions must be inserted. We show that this problem is NP-complete. Consequently, we propose a SAT-based solution and a heuristic to cope with the exponential complexity. Our experimental results show that a time-triggered self-monitored program performs significantly better than the same program monitored by an external time-triggered monitor.
Keywords :
formal verification; monitoring; optimisation; NP-complete; SAT based solution; application program; computing system; engineering time critical application; error detection; exponential complexity; external time triggered monitor; formal testing; formal verification; healthy behavior; operating system level; optimization problem; predictable overhead; safety critical embedded system; self-sampling instrumentation instruction; synchronization dependency; time triggered program self monitoring; time triggered runtime monitoring; time triggered self monitored program; Complexity theory; Educational institutions; Inspection; Instruments; Monitoring; Runtime; Synchronization; Runtime verification; embedded systems; instrumentation; monitoring; predictability; real-time; self-monitoring; time-triggered;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Embedded and Real-Time Computing Systems and Applications (RTCSA), 2012 IEEE 18th International Conference on
Conference_Location :
Seoul
ISSN :
1533-2306
Print_ISBN :
978-1-4673-3017-6
Electronic_ISBN :
1533-2306
Type :
conf
DOI :
10.1109/RTCSA.2012.16
Filename :
6300158
Link To Document :
بازگشت