Model Checking Multitask Applications for OSEK Compliant Real-Time Operating Systems

In the verification of multitask software in real-time embedded systems, general purpose model checkers do not inherently consider characteristics of the real-time operating system, such as priority-based scheduling, priority inversion, and protocols for protecting shared memory resources. Since explicit state model checkers generally explore all possible execution paths and task interleaving, this could potentially lead to exploring execution paths that are redundant, unnecessarily increasing verification complexity and hampering tractability. Based on this premise, in this work we investigate how one can improve the performance of explicit state model checkers, such as SPIN, for the verification of multitask applications that target real-time operating systems.

[1]  Rahul Kumar,et al.  Load Balancing Parallel Explicit State Model Checking , 2005, PDMC.

[2]  Joseph Sifakis,et al.  Specification and verification of concurrent systems in CESAR , 1982, Symposium on Programming.

[3]  Edmund M. Clarke,et al.  Model Checking , 1999, Handbook of Automated Reasoning.

[4]  Wolfgang Reisig,et al.  Lectures on Petri Nets II: Applications, Advances in Petri Nets, the volumes are based on the Advanced Course on Petri Nets , 1996 .

[5]  Stephan Merz,et al.  Model Checking , 2000 .

[6]  Shin Nakajima,et al.  The SPIN Model Checker : Primer and Reference Manual , 2004 .

[7]  Dragan Bosnacki,et al.  Survey on Directed Model Checking , 2009, MoChArt.

[8]  Dragan Bosnacki,et al.  The Design of a Multicore Extension of the SPIN Model Checker , 2007, IEEE Transactions on Software Engineering.

[9]  Toshiaki Aoki Model Checking Multi-Task Software on Real-Time Operating Systems , 2008, 2008 11th IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC).

[10]  Jacques Julliand,et al.  Modeling and Verification of the RUBIS μ−Kernel with SPIN , 2002 .

[11]  Edmund M. Clarke,et al.  Characterizing Correctness Properties of Parallel Programs Using Fixpoints , 1980, ICALP.

[12]  Wang Yi,et al.  Timed Automata: Semantics, Algorithms and Tools , 2003, Lectures on Concurrency and Petri Nets.

[13]  Michael R. Lowry,et al.  Formal Analysis of a Space-Craft Controller Using SPIN , 2001, IEEE Trans. Software Eng..

[14]  Jan Vitek,et al.  Model Checking Real-time Java , 2010 .

[15]  Stavros Tripakis,et al.  Kronos: A Model-Checking Tool for Real-Time Systems , 1998, CAV.

[16]  Antti Valmari,et al.  The State Explosion Problem , 1996, Petri Nets.

[17]  Wang Yi,et al.  UPPAAL - a Tool Suite for Automatic Verification of Real-Time Systems , 1996, Hybrid Systems.