To read this you will have already executed the command: % zcat uSystem.tar.Z | tar -xf - Before installing the uSystem, please take the time to print off a copy of an appropriate License Agreement in: kernel/doc/license/{research,educational}.tex have it signed by an authorized officer representing your institution or company, and forward a copy to: Software Coordination Manager Office of Research University of Waterloo Waterloo, Ontario N2L 3G1 CANADA Also, you should read the statement about copying the uMonitor preprocessor in "monitor/doc/license/COPYING". Currently, the uSystem is supported on the following machines (MIPS, M68k, Intel 386, VAX, NS32k, Sparc), vendors (Apollo, DEC, MIPS, Sequent, SGI, SUN, Encore), and operating systems (BSD 4.3 compatible, IRIX 3.3) are now available. On Sequent, Encore and SGI machines the uSystem can use the multiple processors. 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. The Sequent and Encore versions are setup so that GNU C always uses the vendors assembler because the GNU assembler does not handle the assembler directives generated from GNU C when the "-fshared-data" flag is used. This allows the uSystem to function even when GNU C is installed using the GNU assembler. There is a C shell script in file INSTALL at the same level as this README file. Simply type "INSTALL" in the home directory where the uSystem will reside. You will be prompted for several pieces of information about the environment in which uSystem is being installed. Choices are given in {...} and the particular choice must be typed exactly like the name given in the {...} list. If you want to move the uSystem to a new location in the file structure after installation, you must run the INSTALL shell script at the new site in the file structure. This will update any hard coded path names to reflect the new location. Most directories have a README file that discusses what is going on at that level and what dependencies exist. If you have problems or questions or suggestions, you can send e-mail to "usystem@maytag.waterloo.edu" or "usystem@maytag.uwaterloo.ca" or mail to: uSystem Project c/o Peter A. Buhr Dept. of Computer Science University of Waterloo Waterloo, Ontario N2L 3G1 CANADA There is a paper about version 4.1 of the uSystem in the Sept 1990 issue of Software-Practise and Experience. The following directories contain the source code for making the uSystem, the commands to compile programs containing calls to the uSystem, the documentation for the uSystem, and examples programs that show how to use the uSystem. bin - This directory contains the executables used to compile programs that use the the uSystem. inc,src,lib - These directories contains the include files, source code and object files for any general routines used by other routines in the uSystem. TeX - This directory contains TeX macros for formatting the uSystem documentation. kernel - This directory contains the documentation, source code and "make" files to construct the uKernel. library - This directory contains the documentation, source code and "make" files to construct the uLibrary. monitor - This directory contains the documentation, source code and "make" files to construct the monitor preprocessor. examples - This directory contains example programs that illustrate the different facilities in the uSystem. dmake - This directory contains the source code for "dmake", which is a modified version of "make". gnu - This directory contains patches for GNU C, which are necessary for compiling the uSystem on Sequent Balance and Encore computers.