DocumentCode :
1122747
Title :
Deadline analysis of interrupt-driven software
Author :
Brylow, Dennis ; Palsberg, Jens
Author_Institution :
Dept. of Comput. Sci., Purdue Univ., West Lafayette, IN, USA
Volume :
30
Issue :
10
fYear :
2004
Firstpage :
634
Lastpage :
655
Abstract :
Real-time, reactive, and embedded systems are increasingly used throughout society (e.g., flight control, railway signaling, vehicle management, medical devices, and many others). For real-time, interrupt-driven software, timely interrupt handling is part of correctness. It is vital for software verification in such systems to check that all specified deadlines for interrupt handling are met. Such verification is a daunting task because of the large number of different possible interrupt arrival scenarios. For example, for a Z86-based microcontroller, there can be up to six interrupt sources and each interrupt can arrive during any clock cycle. Verification of such systems has traditionally relied upon lengthy and tedious testing; even under the best of circumstances, testing is likely to cover only a fraction of the state space in interrupt-driven systems. This paper presents the Zilog architecture resource bounding infrastructure (ZARBI), a tool for deadline analysis of interrupt-driven Z86-based software. The main idea is to use static analysis to significantly decrease the required testing effort by automatically identifying and isolating the segments of code that need the most testing. Our tool combines multiresolution static analysis and testing oracles in such a way that only the oracles need to be verified by testing. Each oracle specifies the worst-case execution time from one program point to another, which is then used by the static analysis to improve precision. For six commercial microcontroller systems, our experiments show that a moderate number of testing oracles are sufficient to do precise deadline analysis.
Keywords :
embedded systems; formal verification; interrupts; microcontrollers; program compilers; program diagnostics; program testing; Z86-based microcontroller; Zilog architecture resource bounding infrastructure; deadline analysis; embedded systems; interrupt handling; interrupt-driven Z86-based software; multiresolution static analysis; software verification; testing oracles; worst-case execution time; Aerospace control; Automatic testing; Clocks; Embedded system; Microcontrollers; Rail transportation; Real time systems; State-space methods; System testing; Vehicles; 65; Index Terms- Real time; multiresolution static analysis; testing oracles.;
fLanguage :
English
Journal_Title :
Software Engineering, IEEE Transactions on
Publisher :
ieee
ISSN :
0098-5589
Type :
jour
DOI :
10.1109/TSE.2004.64
Filename :
1339276
Link To Document :
بازگشت