Browse > Article
http://dx.doi.org/10.3745/KIPSTD.2008.15-D.1.99

Verification for Multithreaded Java Code using Java Memory Model  

Lee, Min (경기대학교 전자계산학과)
Kwon, Gi-Hwon (경기대학교 정보과학부)
Abstract
Recently developed compilers perform some optimizations in order to speed up the execution time of source program. These optimizations require the reordering of the sequence of program statements. This reordering does not give any problems in a single-threaded program. However, the reordering gives some significant errors in a multi-threaded program. State-of-the-art model checkers such as JavaPathfinder do not consider the reordering resulted in the optimization step in a compiler since they just consider a single memory model. In this paper, we develop a new verification tool to verify Java source program based on Java Memory Model. And our tool is capable of handling the reordering in verifying Java programs. As a result, our tool finds an error in the test program which is not revealed with the traditional model checker JavaPathFinder.
Keywords
Java Memory Model; Verification; Multi-Threaded Software; Satisfiability Problem;
Citations & Related Records
연도 인용수 순위
  • Reference
1 A. Biere, A. Cimatti, E. M. Clarke, O. Strichman and Y. Zhu, 'Bounded Model Checking,' Vol.58 of Advances in Computers, 2003
2 Raja Vallee-Rai, Laurie Hendren, Vijay Sundaresan, Patrick Lam, Etienne Gagnon and Phong Co, 'Soot - a Java Optimization Framework,' 'Proceedings of CASCON 1999,' pp.125-135, 1999
3 Muchnick, 'Advanced Compiler Design & Implementation,' Morgan Kaufman, 2005
4 Niklas Een and Niklas Sorensson. 'MiniSat - a SAT solver with conflict-clause minimization'. In SAT 2005, 2005. 8
5 Lamport, L. 'How to make a multiprocessor computer that correctly executes multiprocess programs,' IEEE Transactions on Computers 9, No.29, pp.690-691, 1979
6 Jeremy Manson, William Pugh, Sarita V. Adve 'The Java Memory Model,' In the Proceedings of the POPL 2005 , pp.378-391, 2005
7 J. Gosling, B. Joy, G. Steele and G. Bracha, 'The Java Language Specification Third Edition,' Addison-Wesley, 2005
8 E. M. Clarke, O.Grumberg and D. Peled, Model Checking, MIT Press, 1999
9 W. Visser, K. Havelund, G. Brat, S. Park and F. Lerda., 'Model Checking Programs,' Automated Software Engineering Journal.Vol.10, No.2, April, 2003