[comp.parallel] uSystem Version 4.3.1

pabuhr@maytag.waterloo.edu (Peter A. Buhr) (12/12/90)

It's me again!  I would like to announce, to any interested parties, the
availability of Version 4.3.1 of the uSystem (pronounced micro-system), a
library of C routines that provide light-weight concurrency on uniprocessor
and multiprocessor computers running the UNIX operating system.


Version 4.3.1 has several minor fixes from version 4.3, which was just made
available on Dec 4, 1990. The main problems that were fixed involved
installation failures on machines/OS/vendors that we did not have local
access to and therefore could not test. Also there were several suggestions
about improving the installation. We would like to thank all the people
that forwarded suggestions. We have tried to incorporate them all.  If you
got Version 4.3 built, there is probably no point in getting Version 4.3.1.


Fixes:

1. Fixed installation problem on Sun OS 4.1 with conflicting types for
routine fcntl.

2. Increased the frequency of time slicing on mips CPU machines (because
they run so fast).

3. Fixed installation problem on uniprocessor SGI machines with failing
to create sufficient software locks.

4. Fixed installation problems when building documentation on SysV.

5. Fixed a few internal inconsistencies that are only of concern to us, but
were found while fixing the installation problems.


The next release of the uSystem should have asynchronous exception handling
facilities. We also want to port the uSystem to the Mach OS.  Finally, we
are putting together a simple graphics interface for the Silicon Graphics
computer to provide controlled access to the graphics device from multiple
light weight tasks.

BTW, if you like the uSystem, then you're going to love what we have
running in C++. We have augmented C++ with support for concurrency. But
that's another project ...


Version 4.3.1 of the uSystem can be obtained by anonymous ftp from the
following location:

   watmsg.waterloo.edu (129.97.129.9)   pub/uSystem/uSystem.tar.Z

The distribution file is in compressed tar format. Execute the following
command to unpack the source:

   % zcat uSystem.tar.Z | tar -xf -

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

The uSystem runs on the following processors: M68000 series, NS32000
series, VAX, MIPS, Intel 386, Sparc, and the following UNIX operating
systems:

- generic BSD 4.{2,3}
- UNIX System V that has BSD system calls "setitimer" and a "sigcontext"
  passed to signal handlers which contains the location of the interrupted
  program
- Apollo SR10 BSD
- Sun OS 4.0
- Tahoe BSD 4.3
- Ultrix 3.0
- DYNIX
- Umax 4.3
- IRIX 3.3

The uSystem requires at least GNU C 1.37.1. For the Encore and Sequent
Balance, GNU C version 1.37.1 must be patched with the supplied patches.
The uSystem will NOT compile using other compilers. (Don't even think about
it!)

There is an SP&E paper about version 4.1 of the uSystem in the Sept 1990
issue.

The uSystem is being used to build a highly concurrent post-relational
database here at Waterloo. It is also being used for teaching purposes here
and at the University of Sydney, Australia (contact Michael Wise,
michaelw@cs.su.oz.au).