KIT | KIT-Bibliothek | Impressum | Datenschutz

Type Safe Nondeterminism - A formal Semantics of Java Threads

Lochbihler, Andreas

Abstract:

We present a generic framework to transform a single-threaded operational semantics into a semantics with interleaved execution of threads. Threads can be dynamically created and use locks for synchronisation. They can suspend themselves, be notified by other threads again, and interact via shared memory. We formalised this in the proof assistant Isabelle/HOL along with theorems to carry type safety proofs for the instantiating semantics (progress and preservation in the style of Wright and Felleisen [24]) over to the multithreaded case, thereby investigating the role of deadlocks and giving an explicit formalisation for them. We apply this framework to the Java thread model using an extension of the Jinja [12] source code semantics to have type safety for multithreaded Java machinechecked. The Java Memory Model is not included.


Volltext §
DOI: 10.5445/IR/1000008483
Cover der Publikation
Zugehörige Institution(en) am KIT Institut für Programmstrukturen und Datenorganisation (IPD)
Publikationstyp Proceedingsbeitrag
Publikationsjahr 2008
Sprache Englisch
Identifikator urn:nbn:de:swb:90-84838
KITopen-ID: 1000008483
Erschienen in Workshop Program and Proceedings / International Workshop on Foundations of Object-Oriented Languages (FOOL 2008), 13 January, San Francisco, California, USA
Seiten 12 S.
Schlagwörter Threads, Deadlock, Type Safety, Java
KIT – Die Forschungsuniversität in der Helmholtz-Gemeinschaft
KITopen Landing Page