Parizek, Pavel and Kalibera, Tomas (2009) Platform-specific restrictions on concurrency in model checking of Java programs. In: Formal Methods for Industrial Critical Systems 14th International Workshop. Lecture Notes in Computer Science . Springer, Berlin, Germany, pp. 182-196. ISBN 978-3-642-04569-1. E-ISBN 978-3-642-04570-7. (doi:10.1007/978-3-642-04570-7_10) (The full text of this publication is not currently available from this repository. You may be able to access a copy if URLs are provided) (KAR id:30583)
The full text of this publication is not currently available from this repository. You may be able to access a copy if URLs are provided. | |
Official URL: http://dx.doi.org/10.1007/978-3-642-04570-7_10 |
Abstract
The main limitation of software model checking is that, due to state explosion, it does not scale to real-world multi-threaded programs. One of the reasons is that current software model checkers adhere to full semantics of programming languages, which are based on very permissive models of concurrency. Current runtime platforms for programs, however, restrict concurrency in various ways - it is visible especially in the case of critical embedded systems, which typically involve only a single processor and use a threading model based on limited preemption. In this paper, we present a technique for addressing state explosion in model checking of Java programs for embedded systems, which exploits restrictions on concurrency common to current Java platforms for such systems. We have implemented the technique in Java PathFinder and performed a number of experiments on Purdue Collision Detector, which is a non-trivial multi-threaded Java program. Results of experiments show that use of the restrictions on concurrency in model checking with Java PathFinder reduces the state space size by an order of magnitude and also reduces the time needed to discover errors in Java programs.
Item Type: | Book section |
---|---|
DOI/Identification number: | 10.1007/978-3-642-04570-7_10 |
Uncontrolled keywords: | determinacy analysis; Craig interpolants; model checking; Java programs; embedded systems; state explosion; restrictions of concurrency |
Subjects: | Q Science > QA Mathematics (inc Computing science) > QA 76 Software, computer programming, |
Divisions: | Divisions > Division of Computing, Engineering and Mathematical Sciences > School of Computing |
Depositing User: | Tomas Kalibera |
Date Deposited: | 21 Sep 2012 09:49 UTC |
Last Modified: | 16 Nov 2021 10:08 UTC |
Resource URI: | https://kar.kent.ac.uk/id/eprint/30583 (The current URI for this page, for reference purposes) |
- Export to:
- RefWorks
- EPrints3 XML
- BibTeX
- CSV
- Depositors only (login required):