Newsgroups: comp.parallel
From: pabuhr@plg.uwaterloo.ca ("Peter A. Buhr")
Subject: uC++ 4.3 Release Posting
Organization: University of Waterloo
Date: 29 May 1995 16:09:36 GMT
Message-ID: <3qcrk0$297@usenet.srv.cis.pitt.edu>

>> ANNOUNCEMENT <<

I would like to announce, to any interested parties, the availability of
Version 4.3 of uC++ (pronounced micro-C++), an extended C++ that provides
light-weight concurrency on uniprocessor and multiprocessor computers running
the UNIX operating system.  uC++ extends C++ in somewhat the same way that C++
extends C.  The extensions introduce new objects that augment the existing
control flow facilities and provide concurrency.  uC++ provides both direct and
indirect communication using the traditional routine call mechanism.  All
aspects of uC++ are statically type-checked.  Furthermore, uC++ provides
mechanisms for precisely controlling the order in which requests are serviced
and for postponing work on already-accepted requests.

Version 4.3 has several bug fixes, a simplified uniprocessor kernel, ports to
SUN/M68K, DEC/Alpha and SGI/R3000, honour TMPDIR environment variable,
generalized I/O.

>> REQUIREMENTS <<

uC++ requires at least version 4.0 of dmake, which is available by anonymous
ftp from the following location (remember to set your ftp mode to binary):

	plg.uwaterloo.ca:pub/dmake/dmake40.tar.gz

The installation instructions for uC++ also describe how to build dmake.

uC++ requires at least GNU C++ 2.6.3.  uC++ will NOT compile using other
compilers. Currently, the AT&T compiler has several deficiencies that make it
too difficult to generate reasonable code for it.  GNU C++ can be obtained by
anonymous ftp from many ftp sites.

>> FTP SITE <<

Version 4.3 of uC++ can be obtained by anonymous ftp from the following
location (remember to set your ftp mode to binary):

	plg.uwaterloo.ca:pub/uSystem/u++-4.3.tar.gz

The README file contains all the installation instructions. Good luck and
happy concurrency.

>> PORTABILITY <<

uC++ comes configured to run on any of the following platforms without
modification:

	sequent-i386 (both single and multiple processor)
	sun-sparc-sunos (both single and multiple processor)
	sun-sparc-solaris (both single and multiple processor)
	sun-m68k-sunos (both single and multiple processor)
	dec-alpha (both single and multiple processor)
	sgi-mips-r4000 (both single and multiple processor)
	sgi-mips-r3000 (single processor only)
	gizmo (embedded version for stand-alone m68k board)

Currently, I have half of the IBM/RS6000 port done but I'm having trouble
getting an HP-PA to work on. Hopefully, both these ports will be available in
the next release.

>> PAPERS <<

There is a paper about uC++ version 3.2.5 in: Software--Practice and
Experience, 22(2):137-172, February 1992, but many extensions have occurred
since then, so read the uC++ reference manual for the current design.

>> FUTURE <<

This version has almost all the kernel modifications for the monitoring,
visualization and debugger toolkit, and the real-time support that is coming
soon. Currently, we have the following running: event tracing, real-time
monitoring using an extended multi-threaded X11 R6, and a prototype
multi-threaded debugger for multi-threaded applications.

As well, a database toolkit using memory mapping is also under construction.

