(no subject)

Brian TAM (btam@cs.ucsd.edu)
Tue, 18 Apr 2000 07:55:55 -0700 (PDT)

Brian Tam
Spring 2000
Paper evaluations

"Pilot: An Operating System for a Personal Computer"

Pilot was an operating system designed for the personal
computer. Moreover, it pioneered the construction of PC-based
networks that would later come to characterize a large part of
the Internet today. This paper addresses the major issues in
designing a system for a machine in such an environment.
Pilot is a time-sharing system, without the full complement
of features of that class of managers. Meant to be used on a
dedicated single-user machine, Pilot supports only the language
in which it was written, Mesa, and features little more than
software capabilities for defensive protection against errors.
Pilot uses 64-bit identifiers to name files and volumes (media
containing files) using a single address virtual space, thereby
allowing objects to be distinguished on any machine in a
networked environment. A mapping scheme is used to allocate
and pages in virtual memory, which are divided into runs of
pages called spaces, the unit of swapping in page replacement.
"Advice" facilities are provided to optimize performance during
period of heavy traffic.
Program modules specify the algorithms and actual data structures
comprising the implementation of the system, while definitions
modules specify the interfaces between program modules.
Pilot is implemented as a set of kernels providing a basic core
of function, which is extended by higher level managers, to
avoid the dangers of circular dependencies among components in
the system.
Communications software comprises an integral part of Pilot,
consistent with its goal of integration into networking
enrironments. Pilot contains all the familiar infrastructure of
a networking system: routers, communication protocols, sockets.
Clients are identified by network addresses, at which streams in
the form of packets are delivered or sent. Pilot can be set up
to behave as a user's personal computer, a supplier of information,
or as a dedicated internetwork router.
The authors built Pilot in a relatively short time,
using small modules that helped in avoiding making many kinds of
mistakes and were amenable to modification. While Pilot itself
did not succeed as a major operating system, the ideas behind
creating PC-based networks are very much alive today.
Some future work suggested by the paper is the building of
multi-language support, but more importantly improving protection
against malicious attacks, which have become a major problem in
recent times.

"Sharing and Protection in a Single Address Space Operating System"

Since 64-bit architectures appeared on the scene, there was a
need to rethink the design of operating systems in lieu of the
considerable increase in address space now available to programs
and applications. In particular, the possibility of using a single
global virtual address space shared by all procedures and data now
becomes feasible. Addressing and protection, which were inextricably
bound in various extant multi-addressing systems, can now be cleanly
separated. Opal accomplishes this, thereby removing the clumsy way
in which sharing was handled before. Procedures and data now do not
require a priori address space coordination to be shared.

Opal was designed to support an increasingly important class of
applications consisting of highly-interactive tools manipulating a
shared persistent database. The authors designed and implemented an
Opal prototype for an industrial application.