paper summary 04-18-00

Jamison Dustin COLLINS (jdcollin@cs.ucsd.edu)
Tue, 18 Apr 2000 04:41:23 -0700 (PDT)

The Pilot paper explores the differences that arise from writing an
Operating System for
a personal computer, rather than a multi-user shared machine. The
emphasis is focused much more
heavily on close user/system cooperation and enabling communications
between multiple autonomous
machines.
This OS has a unique design because of the different assumptions
that are made in its construction (program error is more likely than
program maliciousness etc).

Because of the conditions under which it is to be used, the Pilot
operating system is designed with
a primary emphasis on the user system interaction. For example, the
operating system provides
a GUI the user. Additionally, the user is allowed to interact much more
directly with the hardware
because the danger of a malicious program attempting to crash the machine
is greatly reduced.
Additionally, the OS was designed as a set of extensions to the Mesa
language, with the burden of
program protection removed from the OS and primarily placed on the type
checking of the Mesa language.
A series of interfaces have been designed, amongst them are one that
provides a functionality similar
to Unix Pipes and a powerful networking interface. Because of the nature
of the system, it is much
more important to provide a powerful system by which multiple computers
running Pilot can communicate.

This paper's approach is validated by the success of the ultimately
constructed OS.
The primary goals of the paper, as stated, are to introduce sevaral
features only appropriate for an
OS running on a single user system and to combine several ideas which the
author says
"had previously only present in systems that were demonstration vehicles
and not for serious
client use." By implementing the OS as they have, the author's have shown
that these features can
be successfully combined into a compact system. Additionally, reasonable
arguments are proposed
for the design decisions targetted toward a single user system.

This was an interesting paper. It is surprising to see a reasonable basis
for writing an OS which
provides very little in the way of protection. It still isn't clear,
however, that there is much of a
real reason to not provide at least the potential for a more firm
protection system other than the
fact that processors for use in PCs at this time lacked the hardware
support for it. One good point of
this paper is the usefulness of the file scavanger in permitting the
migration between different versions
of a filesystem. It seems unfortunate that modern file systems(at least
ones I'm familiar with) don't
seem to have significantly expanded on the implementation provided in this
paper to provide increased
functionality.