Review of Other Operating Systems
This page is under constant construction.
Please help me enrich it,
by sending annotations to existing pointers,
new pointers,
and the usual feedback.
Please tell me about any other interesting
pointer you know, that may relate somehow (anyhow) to the Tunes project...
Contents
This index favors original and research operating systems.
Original OS Projects,
that try to go beyond traditional system design.
Unix akins and alikes,
that try to perpetrate, with local enhancements,
the traditional OS bloat.
Commercial systems,
that can be traditional or not,
but embody the what is available to the common of mortal men.
OS Related pointers
Of course, do not forget languages
that are another side of computing systems.
Original OS Projects
-
Aegis is
an OS based upon the idea of an "ExoKernel"
(much like the NoKernel idea behind Tunes:
there is no more runtime kernel in the OS,
which yields up to 10000% performance gain).
-
Papers about Andy Tanenbaum's
Amoeba
distributed OS
(new address
here ?),
and related
Orca
programming language,
to explore the implementation techniques for
distributed computing.
-
Sony CSL's
Apertos,
the Reflective OO OS
-
The BatOS
project of an OS written in BETA
from the Czech Republic.
- The Cache kernel
-
The
Fox
project from CMU to write an OS using (an extension to)
the programming language SML.
-
Grasshopper,
the orthogonally persistent distributed OS from Australia
-
-
-
L3
and
L4
(also here)
are microkernels to demonstrate how optimizing performance
requires OS kernels to be completely hardware-dependent,
and even CPU-version dependent in a same family of CPUs.
-
Jecel's
Merlin
project of a SELF-based OS
(and here
a paper about it).
-
Plan9 OS, or what Unix should have been
(by AT&T from where Unix came).
It's a commercial OS, but freely available for academic use.
See its
FAQ.
It got everything right as for proposing a uniform
system interface
(the dynamic, per-process name->channel "filesystem" thing)
but is still wrong by using a low-level programming language
with coarse-grained system abstractions.
-
The PUMA
project from New Mexico.
- The SCOUT project.
-
SPIN
OS from University of Washington
- The Sprite
OS from UCB.
-
OGI's Synthetix
project of fine-grained incremental partial evaluation in OS kernels.
-
The irish Tigger
project is developing a framework for the construction of a family
of distributed object-support platforms.
-
Tunes,
the very project hosting this page,
encompasses an OS project, mind you,
even if it goes far beyond a mere conventional operating system.
Unix akins and likes
-
Flexmach,
a project for objects above Mach in C++ (yuck)
and the related
OMOS
model and implementation over plain unix.
-
GNUStep
is a project to implement a free clone of NeXTStep
(a FAQ
here).
[Pointer update:
GNUStep.org,
and a european mirror]
-
The HURD is the OS from the GNU project,
also built on top of Mach.
-
Linus Torvalds'
Linux
free POSIX.1 compliant Unix clone that works on
32 bit intel PCs, but also on
Sparc, Alpha, 680x0, MIPS, PowerPC,
with other ports in progress,
including for 16-bit i8086 based computers !
Also check out the
linux.org or
sunsite pages.
Manual pages here.
There is also a
Linux on Mach project,
and a
Linux-lite
demo.
-
Mach
is a free microkernel upon which many unix clones are built.
As an example
LITES
is a 4.4BSD Lites based Mach server providing binary compatibility with
4.4BSD,
FreeBSD,
NetBSD,
386BSD,
UX, and
Linux, while
-
NachOS
is an instructional
OS developped at Berkeley by Tom Anderson, Wayne Christofer,
Stephen Procter and others, that shows the principles
of the traditional unix-like model.
-
Sun's
Spring
System
-
Andy Valencia's
VSTa
fine Plan9-inspired but free open-developped
microkernel-based OS; its
mailing list archive and its
distribution
(also a french mirror
here).
Commercial OSes
-
The
FreeDOS
project for a free MS-DOS clone.
As the name says, it's not a commercial project,
but I put it here because its (sole) interest is to
emulate and replace a well-known commercial product.
- GEOS
(also here
and
there)
is some very fine OO OS for ix86 pcs of all classes
which multitasks even on 8088 computers !
- Apple's
Newton
Operating System
and
NewtonScript
language
- TAOS
is the only OS that currently can distribute code on heterogeneous
underlying networks
(here their internet contact).
- Chorus
(see its
FAQ)
is a commercial micro-kernel rival to Mach.
- QNX
is a an effective scalable POSIX-emulation-capable
message-passing-micro-kernel-based real-time distributable OS
that has proven successful in the embedded market
and/or on ix86 systems.
See their
QNX papers.
(I should check the following old links to see if they still exist:
here or
there ???)
- MachTen
is a commercial version of BSD4.3 using Mach on MacIntoshes.
-
TSX-32 is a 32-bit OS for PCs
with small memory requirements that can also emulate DOS
(and run Windows ?).
- The Taligent company
is the result of some counter-nature cross between Apple and IBM ;-)
it works on a brand new operating system,
the CommonPoint application system,
that attempts to change the basic programming paradigm,
and which has been released on top of AIX in summer '95
(expected on top of OS/2 in '96).
To know more about it, you can browse the first two chapters of
the book Inside Taligent Technology by
Sean Cotter
-
Has anyone got pointers about major brand X OSes, like
MS-DOS, MacOS, Windows (3.x, NT, '95), UNIX clones, OS/2, etc ?
It may be particularly interesting to have critical reviews of these
(besides their development being closed and people being taken
hostages).
-
I guess I could find some pointers on
Yahoo
and newsgroups
OS Related Pointers
Indices about OSes and related subjects:
Here are pointers to packages for distributed/parallel computing:
- Concert
by University of Illinois at Urbana-Champaign
is a parallel programming environment
using languages Concurrent Agregates or ICC++
(parallel extensions of OO Lisp and C++ respectively).
"Both are fine-grained object-oriented language based on
the actor model. These languages also support aggregates
(collections), multi-access abstractions, and allow both
data and task parallelism to be exploited seamlessly."
- Arjuna
from the University of Newcastle upon Tyne (England),
is allegedly THE programming system
for reliable distributed computing,
but is built as a set of C++ classes.
- OZ++ is also a freely available object package to allow
world-wide upgradable modular distributed computing.
- Chant: A Talking Threads Package.
It's a package that extends existing threads package
(well, pthreads) with inter-thread communication support,
even if threads run on distinct processes or computers.
That is, a very low-level package for parallel computing.
Here are pointers to threads packages:
- David Keppel's minimalistic
QuickThreads package
(a portable abstraction of just the machine-dependent parts
of a threads package, for many architectures),
and accompanying
tech report.
- Chris Provenzano's
pthreads implementation of the POSIX 1003.4a pthreads
package.
Chris' homepage includes partial docs for the package.
Complete docs can only be ordered from the IEEE
- the Florida State University also
has its own FSU Pthreads library for Sparc and now ix86 architectures,
available by FTP
as part of the POSIX/ADA Run-Time (PART) project.
- Stephen Crane's
lwp ("light-weight processes") package.
- Elan Feingold's minimalist
ethreads package.
- Here is from DEC SRC
An Intro to Programming with Threads
Here are some research laboratories interested in
operating systems (send me more addresses):
Here are some sources of inspiration for people developping
a 32-bit OS on PC's:
lots of code from the
cygnus support archive
(also mirrored by
sunsite UK),
including VSTa, MMURTL, other OSes, and FORTH systems.
DOS extenders in the
x2ftp archive
(some interesting docs around, too)
(French mirror here)
Some 32-bit FORTH systems from the
taygeta archive
David Lindauer's
OS Kernel 1.00
Nathan Hawkins'
Radix
and of course, the code for all the
free OSes above,
including Tunes.
Other OS projects you could join:
Of course, I'd encourage you to join
Tunes if you are looking for a deep rethinking of an OS,
VSTa if you like custom microkernel-based message passing,
GNU HURD if you like the new wave for computer tradition,
Linux if you like the old traditional unixish approach.
But if none of these please you,
if you like doing things from almost scratch,
here are projects that might interest you:
Other OS-related pages
More netsurfing
The Tunes project that hosts this page
may interest you, or
this collection of
FTP addresses, or
Yahoo
the WWW directory.
And remember, the "OS" side is only one side of the medal.
Also look at the Language side.
To Do on this page
Actually review these OSes, do not merely point to them. Gasp.
Talk about the open development model, as used in Linux.
Have a look at
OI and
MLI
Add pointers to
SPACE
and
GLOBE
Add pointers to
Choices and
Pegasus,
as well as to all pages pointed in various OS indexes...
Send a note to all the OS pages that do not cite us, as well as to Yahoo.
Add these bibliographic pointers from the OS FAQ:
Checkpointing,
cstr,
German Bib,
Arizonian Bib,
bibliographies,
UFS 93.
Add these OS FTP pointers from the OS FAQ:
Clouds,
Cronus,
Guide,
Horus,
Isis
(also here),
X kernel.
FTP sites with OS-related stuff: in
France,
England,
Taiwan.
Find out more about
STAPLE,
a persistent lazy-functional-language based project
(FTP).
Be, inc.
How to write a systems paper
(get a text version by sending body "send advice papers" to
info@usenix.org)
Rumor, a user-level version of Ficus, an optimistically
replicated file system (see
for
a summary of Ficus and for a
description of Rumor). Unfortunately, Rumor is not yet being
distributed.
I don't know in what section to put this:
Floppy Drive Formats
See the VINO project
EROS Extremely Reliable OS
Back to the
Review subproject.
Page Maintainer:
Faré
-- rideau@clipper.ens.fr