DocumentCode
1663552
Title
Distributed process networks in Java
Author
Parks, Thomas M. ; Roberts, David
Author_Institution
Dept. of Comput. Sci., Colgate Univ., Hamilton, NY, USA
fYear
2003
Abstract
Kahn (1974, 1977) defined a formal model for networks of processes that communicate through channels carrying streams of data tokens. His mathematical results show the necessary conditions for an implementation to be determinate, that is, for the results of the computation to be identical whether the processes are executed sequentially, concurrently, or in parallel. In our Java implementation channels enforce blocking reads and each process has its own thread in order to ensure determinacy and avoid deadlock. The network connections required to maintain the communication channels between processes executing on separate servers are automatically established when parts of the program graph are distributed to other servers by Java object serialization. Our Java implementation of process networks is suitable for execution on a single computer, a cluster of servers on a high-speed LAN, or geographically dispersed servers on the Internet.
Keywords
Java; concurrency control; formal specification; multi-threading; Java; blocking reads; deadlock; determinacy; distributed process networks; formal model; object serialization; program graph; thread; Communication channels; Computer networks; Concurrent computing; IP networks; Java; Local area networks; Network servers; System recovery; Web server; Yarn;
fLanguage
English
Publisher
ieee
Conference_Titel
Parallel and Distributed Processing Symposium, 2003. Proceedings. International
ISSN
1530-2075
Print_ISBN
0-7695-1926-1
Type
conf
DOI
10.1109/IPDPS.2003.1213266
Filename
1213266
Link To Document