School of Computing

Mobile Data Types for Communicating Processes

P.H. Welch and F.R.M. Barnes

In H.R. Arabnia, editor, Proceedings of the International Conference on Parallel and Distributed Processing Techniques and Applications 2001, volume 1, pages 182-196. CSREA, CSREA Press, June 2001.

Abstract

Aliasing problems are a major source for error in traditional imperative languages (such as C) and modern object-oriented languages (such as Java, C++ and C#). Add in concurrency and the problems compound exponentially. Improperly synchronized access to shared (i.e. aliased) resources leads to problems of race hazard, deadlock, livelock and starvation. This paper describes the binding into occam (a concurrent processing language based on CSP) of a secure, dynamic and efficient way of sharing data between parallel processes with minimal synchronization overheads. The key new facilities provided are: a movement semantics for assignment and communication, strict zero-aliasing, apparently dynamic memory allocation and automatic zero-or-very-small-unit-time garbage collection. With occam becoming available on a variety of microprocessors for GUI building, internet services and small-memory-footprint embedded products, these capabilities are timely. Lessons are drawn for concurrency back in OO languages - and especially for the JCSP ("CSP for Java") package library.

Bibtex Record

@inproceedings{1328,
author = {P.H. Welch and F.R.M. Barnes},
title = {Mobile {D}ata {T}ypes for {C}ommunicating {P}rocesses},
month = {June},
year = {2001},
pages = {182-196},
keywords = {determinacy analysis, Craig interpolants},
note = {},
doi = {},
url = {http://www.cs.kent.ac.uk/pubs/2001/1328},
    publication_type = {inproceedings},
    submission_id = {14740_1011625328},
    ISBN = {1-892512-66-1},
    booktitle = {Proceedings of the International Conference on Parallel and Distributed Processing Techniques and Applications 2001},
    volume = {1},
    organization = {CSREA},
    publisher = {CSREA Press},
    refereed = {Yes},
    editor = {H.R. Arabnia},
}

School of Computing, University of Kent, Canterbury, Kent, CT2 7NF

Enquiries: +44 (0)1227 824180 or contact us.

Last Updated: 21/03/2014