The Java language enables the development of concurrent and distributed software through the concepts of thread and remote method invocation (RMI). It is known that developing concurrent and distributed software is a challenging task, mainly because of potential concurrency errors such as deadlocks and livelocks. One promising way to help the designer bl this task is providing static analysis tools that can detect such errors in the source code, as documented in the rich literature on static analysis of Ada tasking programs. This paper extends the approach followed for Ada tasking programs to the new Java language, providing formal models for the main thread synchronization primitives offered by the language. The formalism used is Promela, the input language of the model checker SPIN, which is based on extended communicating finite state machines and provides an efficient analysis algorithm.

Static Analysis of Java Mutithreaded and Distributed Applications / Demartini, Claudio Giovanni; Sisto, Riccardo. - STAMPA. - (1998), pp. 215-222. (Intervento presentato al convegno IEEE Int. Symp. on Software Engineering for Parallel and Distributed Systems tenutosi a Kyoto, Japan nel APR 20-21, 1998) [10.1109/PDSE.1998.668184].

Static Analysis of Java Mutithreaded and Distributed Applications

DEMARTINI, Claudio Giovanni;SISTO, Riccardo
1998

Abstract

The Java language enables the development of concurrent and distributed software through the concepts of thread and remote method invocation (RMI). It is known that developing concurrent and distributed software is a challenging task, mainly because of potential concurrency errors such as deadlocks and livelocks. One promising way to help the designer bl this task is providing static analysis tools that can detect such errors in the source code, as documented in the rich literature on static analysis of Ada tasking programs. This paper extends the approach followed for Ada tasking programs to the new Java language, providing formal models for the main thread synchronization primitives offered by the language. The formalism used is Promela, the input language of the model checker SPIN, which is based on extended communicating finite state machines and provides an efficient analysis algorithm.
1998
0-8186-8467-4
File in questo prodotto:
Non ci sono file associati a questo prodotto.
Pubblicazioni consigliate

I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/11583/1410897
 Attenzione

Attenzione! I dati visualizzati non sono stati sottoposti a validazione da parte dell'ateneo