TUNIS ( was Re: Future at Berzerkeley )
Mark Funkenhauser
funke at turing.toronto.edu
Wed Mar 29 11:53:08 AEST 1989
In article <373 at bnr-fos.UUCP> hwt at bnr-public.UUCP (Henry Troup) writes:
> Some years ago, when I was an undergrad at the University of Toronto,
> a prof had just completed TUNIS, the Toronto UNIx System.
> This was a Unix (BSD) kernel written in Concurrent Euclid.
> Anyone know what if anything happened with this?
>
[ I believe TUNIS is short for "Toronto UNIversity System" ]
TUNIS is a re-implementation of the UNIX kernel. Its principle design goals
were to determine if a kernel could be written using the most
recent software engineering techniques without significant performance loss.
These techniques include modularity, hierarchical structuring,
abstraction and information hiding.
A concurrent programming language was also developed (somewhat in parallel)
to aid in the implementation of TUNIS. This language was called Concurrent
Euclid. This has since been replaced by a new generation language
called Turing and Turing Plus.
The Turing language is strongly typed, has a precise
and formally defined semantics, enforces modularity and data abstraction
and Turing Plus provides concurrency primitives (e.g. light weight processes,
synchronization and mutual exclusion constructs ... ).
The compiler optionally provides a multitude of runtime checks to ensure that
the program execution conforms to the language semantics.
An important concept used during the design is that the language
defines truly concurrent processes.
Each process could run on a separate processor if multiple processors
were available and the processors shared a common memory.
In fact there have been 2 successful implementations of tightly
coupled multi-processor systems using TUNIS: a Master-Slave version
and a Symmetric (or distributed) version.
The Master-Slave version supports real-time applications and is being used
by a group within the university to do robotics research and development.
Research and development of TUNIS is still active.
It is currently 4.1 compatible and runs on several NS32000 systems.
We are in the process of becoming POSIX (and SVID) compatible.
We are also porting it to the mc68030 and 80386 architectures.
Currently ongoing projects include :
1) the development of Trusted TUNIS. A 'Unix' system that meets the
US DoD's B3 level criteria for trusted computer systems.
2) the development of HECTOR - a tightly coupled multiprocessor system
that can contain several hundred (thousand?) 88000 processors.
This includes the development of a new hierarchical bus architecture.
The software will be BSD4.3 and/or SunOS compatible
with new features such as user controllable light-weight processes
(aka threads).
The source code for TUNIS has been available to universities for teaching
and/or research purposes. There does not exist a commercially available
version (yet) but we sure would like to hear from anyone interested
(commercially or otherwise) especially in our Trusted TUNIS research.
Any further info can be obtained from:
TUNIS Distribution Manager
Computer Systems Research Institute
University of Toronto
10 King's College Road
Toronto, Ontario, Canada
M5S 1A4
or from me :
Mark Funkenhauser email: funke at csri.toronto.edu
( at the above address )
More information about the Comp.unix.questions
mailing list