A communication library to support concurrent programming courses

Document Type

Conference Proceeding

Publication Date



Department of Computer Science


A number of communication libraries have been written to support concurrent programming. For a variety of reasons, these libraries generally are not well-suited for use in undergraduate courses. We have written a communication library uniquely tailored to an academic environment. The library provides two levels of communication abstraction (topology and channel) and supports communication among threads, processes on the same machine, and processes on different machines, via a unified interface. The routines facilitate controlled message loss along channels and can be integrated with an existing graphical tool that supports visualization of the communication that occurs. An editor has been developed for automatic code generation for arbitrary topologies via a graphical interface. All these tools run over Solaris, Linux, and Windows.

Publisher's Statement

Copyright 2002 ACM. Publisher’s version of record: https://doi.org/10.1145/563517.563478

Publication Title

SIGCSE '02 Proceedings of the 33rd SIGCSE technical symposium on Computer science education