Thread View: comp.sys.sequent
1 messages
1 total messages
Started by Rick Stroobosscher
Fri, 04 Sep 1992 20:54
(none)
Author: Rick Stroobosscher
Date: Fri, 04 Sep 1992 20:54
Date: Fri, 04 Sep 1992 20:54
115 lines
5793 bytes
5793 bytes
We are pleased to announce, to any interested parties, the availability of Version 3.4.4 of uC++ (pronounced micro-C++). uC++ extends the C++ programming language in somewhat the same way that C++ extends the C programming language. The extensions introduce new objects that augment the existing set of control flow facilities and provide for light-weight concurrency on uniprocessor and parallel execution on multiprocessor computers running the UNIX operating system. uC++ is not another thread package built on top of C++, but a comprehensive set of language extensions that integrate the notions of coroutine, mutual exclusion and concurrent execution into the language. Here are some things to watch out for in Version 3.4.4: 1. The uC++ translator may fail when given very bad syntax errors. The error recovery facilities of the translator will be updated in version 4. Also, the translator is vulnerable to programs that use the same names for types and routines. Beware of this vulnerability. It may show up in very subtle errors. 2. The "inline" version of the runtime environment is not working in this release, so that performance is significantly slower than it can be. When the "inline" version is working, performance is comparable to any light- weight tasking system. 3. The only multiprocessor computer supported in this release is the Sequent Symmetry. Ports to more vendor/machines will appear shortly. uC++ requires at least version 3.8 of dmake, which is available by anonymous ftp from the following location (remember to set your ftp mode to binary): watmsg.uwaterloo.ca (129.97.141.9) pub/dmake/dmake38.tar.Z Execute the following command to unpack the source: % zcat dmake38.tar.Z | tar -xf - To build dmake, edit the variables in file ./unix/startup.h. The variable MAKESTARTUP must specify the location of the startup.mk file, which contains all the implicit recipes. This file is placed at the top level of the source directory after dmake is built. If dmake is not being installed in a public location, set the value of MAKESTARTUP to dmake-source-path/startup.mk. After setting the MAKESTARTUP variable, execute the command make in directory dmake to determine what configurations are available. A list of possible configurations will be printed. Once dmake is built, add the executable to your command path. The current version of uC++ can be obtained by anonymous ftp from the following location (remember to set your ftp mode to binary): watmsg.uwaterloo.ca (129.97.141.9) pub/uSystem/u++-3.4.4.tar.Z Execute the following command to unpack the source: % zcat u++-3.4.4.tar.Z | tar -xf - To build uC++, edit the variables in file ./Makefile. The variable ROOT must specify the current location of the uC++ source (the path to the directory that contains the source). The variable BINDIR specifies the location where the u++ executable and other executables needed for compilation are placed. The LIBDIR variable specifies the location for the u++ runtime libraries. Both BINDIR and LIBDIR have default values. After setting at least the ROOT variable, execute the command dmake in this directory to determine what configurations are available. A list of possible configurations will be printed. After installation is complete, there will be a number of executables created in the BINDIR location. Add this directory to your command path to access the compilation command u++, or move the u++ executable itself to a directory in your command path. Do not move the other executables in BINDIR, as the u++ executable references these executables and the runtime library via hard coded path names set at installation time. A postscript version of the uC++ reference manual is available in the same ftp directory as u++-3.4.4.tar.Z, called u++-3.4.4.ps. It contains a copy of the uC++ documentation that has been formatted for 8.5x11 paper. This file has been made available because some people have had problems LaTeXing the documentation that comes with the uC++ distribution. Normally, it is unnecessary to retrieve this file as uC++ comes with the latex source for the reference manual. uC++ runs on the following processors: M68K series, NS32K series, VAX, MIPS, Intel 386, Sparc, and the following UNIX operating systems: - generic BSD 4.3 - Sun OS 4.x - Tahoe BSD 4.3 - Ultrix 3.x/4.x - DYNIX uC++ requires at least GNU C++ 2.2. uC++ will NOT compile using other compilers. To run multiprocessor on a Sequent GNU C++ must use the Sequent assembler and loader. There is a Software-Practice and Experience paper about uC++ Version 2.0 in the Feb 1992 issue. Note, there have been many changes from version 2 to 3, and there will be more changes from version 3 to 4. uC++ is being used daily to build highly concurrent access methods for persistent file structures (databases) here at Waterloo. What's coming in uC++ Version 4: - inline version of kernel - visualization of concurrent execution - multiprocessor ports to SGI, Encore - uWait and uSignal as members of uCondition - port to IBM 6000 - task priorities - exception handling - improve translator, make more robust - time out on I/O calls We hope to have some of this done by the end of the year.
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads