Reliable Synchronization Primitives for Java
- Creators
- Sivilotti, Paolo A. G.
- Chandy, K. Mani
Abstract
Java is an architecture-independent, object-oriented language designed to facilitate code-sharing across the Internet in general, via the Web in particular. Java is multithreaded, providing thread creation and synchronization constructs based on generalized monitors. Although these primitives are appropriate for many windowing applications, they are not necessarily well-suited for the larger class of multithreaded programs that occur as part of distributed systems. We demonstrate how the Java primitives, in conjunction with the object-oriented aspects of the language, can be used to implement a collection of other traditional synchronization paradigms. These paradigms are formally specified, their implementations are rigorously verified, and their use is illustrated with several examples.
Additional Information
© 1996 California Institute of Technology. June 1, 1996. This research was supported in part by NSF/PSE grant CCR-9527130, by AFOSR grant AFOSR-91-0070, and by an IBM Computer Science Fellowship.Attached Files
Submitted - 96-11.pdf
Submitted - 96-11.ps
Files
Additional details
- Eprint ID
- 26892
- Resolver ID
- CaltechCSTR:1996.cs-tr-96-11
- NSF
- CCR-9527130
- Air Force Office of Scientific Research (AFOSR)
- AFOSR-91-0070
- IBM
- Created
-
2001-05-14Created from EPrint's datestamp field
- Updated
-
2019-10-03Created from EPrint's last_modified field
- Caltech groups
- Computer Science Technical Reports