Check out the new USENIX Web site.

Concert/C: A Language for Distributed Programming

Joshua S. Auerbach, Arthur P. Goldberg, German S. Goldszmidt,
Ajei S. Gopal, Mark T. Kennedy, Josyula R. Rao, James R. Russell

IBM Thomas J. Watson Research Center
P.O. Box 704, Yorktown Heights, NY 10598


Concert/C is a new language for distributed C programming that extends ANSI C to support distribution and process dynamics. Concert/C provides the ability to create and terminate processes, connect them together, and communicate among them. It supports transparent remote function calls (RPC) and asynchronous messages. Interprocess communications interfaces are typed in Concert/C, and type correctness is checked at compile time wherever possible, otherwise at runtime. All C data types, including complex data structures containing pointers and aliases, can be transmitted in RPCs.

Concert/C programs run on a heterogeneous set of machine architectures and operating systems and communicate over multiple RPC and messaging protocols. The current Concert/C implementation runs on AIX 3.2 (All trademarks appearing in this paper are recognized registered trademarks of their respective companies.), SunOS 4.1, Solaris 2.2 and OS/2 2.1, and communicates over Sun RPC, OSF/DCE and UDP multicast. Several groups inside and outside IBM are actively using Concert/C, and it is available via anonymous ftp from

Download the full text of this paper in ASCII (60,775 bytes) and PDF (236,649 bytes) form.

To Become a USENIX Member, please see our Membership Information.