What kinds of things would you want in the GNU OS?

Jim Frost madd at bu-cs.BU.EDU
Tue May 30 07:26:01 AEST 1989


In article <280 at ecijmm.UUCP> jmm at ecijmm.UUCP (John Macdonald) writes:
|In article <10336 at smoke.BRL.MIL> gwyn at brl.arpa (Doug Gwyn) writes:
|This method originated with the (Waterloo) Thoth Operating System [1],
|and has since been used and extended in a number of other systems (perhaps
|most notably the Stanford V system[2] [and maybe Mach too, but I don't know
|about that]).  This method uses small fixed size messages sent between
|processes using primitives send, receive, and reply.  The sender blocks
|until the receiver accepts the message AND replies to it.
[...]
|This mechanism allows for a huge amount of non-kernel implementation of
|system capabilities [...]
|using a single mechanism in a rather elegant clean fashion.

MINIX, a small Version 7 implementation of UNIX, uses a
message-passing kernel as well, and has processes handle just about
everything except scheduling.  Given that MINIX is a teaching tool,
we may see more of this showing up (see _Operating Systems:  Design
and Implementation_, A. Tanenbaum).  It certainly has an elegant
design, and since you get to futz with source, MINIX is an excellent
system for teaching.

There are problems with message-passing; it's usually a bottleneck,
creates overhead on every call (even those which you would like to
have almost no overhead), and is often difficult to move to
multiple-processor systems.  All of these problems can be corrected,
but you screw up the elegance of the system.

jim frost
software tool & die
madd at bu-it.bu.edu



More information about the Comp.unix.wizards mailing list