PILOT, OPAL-evaluations

Pavana Yalamanchili (pavanay@hotmail.com)
Tue, 18 Apr 2000 07:40:51 PDT

PILOT: An Operating System For A Personal Computer

The Pilot operating system provides a single-user, single-language
environment for higher-level software on a powerful personal computer.

Its features include:
∑ Virtual memory
∑ A large ďflatĒ file system
∑ Streams
∑ Network communication facilities
∑ Concurrent programming support

The facilities provided display interesting similarities to and differences
from corresponding facilities provided in large multi-user systems.

Pilot is implemented in Mesa, a high-level system programming language. The
primary user interface is a high-resolution bit-map display, with a keyboard
and a pointing device. A sizable moving-arm disk provides secondary storage.
A local packet network provides a high bandwidth connection to other
personal computers and to server systems offering such remote services as
printing and shared file storage.

The description of Pilot is split along the lines of an interface and its
implementation.
∑ As an environment for its client programs, Pilot consists of a set of Mesa
interfaces, each defining a group of related types, operations, and error
signals.
∑ As a Mesa program, Pilot consists of a large collection of modules
supporting the various interfaces seen by clients.

As the author says, Pilotís real significance is its careful integration, in
a single relatively compact system, of a number of good ideas, which have
previously tended to appear individually, often in systems, which were
demonstration vehicles not intended to support serious client programs.
The combination of streams, packet communications, a hierarchical virtual
memory mapped to a large file space, concurrent programming support, and a
modular high-level language, provides an environment with relatively few
artificial limitations on the size and complexity of the client programs
which can be supported.

Sharing And protection In A Single Address Space Operating System

Opal, a single address space operating system was designed for wide-address
architectures. This paper justifies the Opal model and its goals for sharing
and protection, presents the system and its abstractions, describes the
prototype implementation, and reports experience with integrated
applications.

The main idea behind designing Opal was to restructure operating systems in
order to improve the organization of both the system and its applications,
specifically, to change the way that operating systems use address space.

Basic Opal abstractions are:
∑ Protection domains
∑ Segments
∑ Portals
∑ Resource groups

The fundamental principal of the Opal system is that addresses have a unique
interpretation, for all applications, for potentially all time. Virtual
addresses are context-independent; they resolve to the same data,
independently of who uses them. Threads have the right to name all data in
the system but it does not have right to access all of that data. The
protection domain in which that thread executes defines the access rights,
limiting its access to a specific set of pages at a specific instant.
Sharing is simplified because addresses are context-independent. There is no
loss of protection, because addressability and access are independent.

Opalís concepts are similar to those of the previous systems, i.e.,
capability hardware systems and object-oriented operating systems. Those
systems tended to be overly complex and slow. The author believes that the
problem was caused by applying hardware or operating system protection
mechanisms to fine-grained user and language objects. Opal provided
segment-grained protection and left fine-grained storage management to
languages and runtime systems. Another problem faced by previous systems was
the insufficient addressing capacity of the underlying hardware base, which
resulted in an additional level of software to translate from long-term
global addresses to short-term virtual addresses. The author believes that
with the appearance of RISC microprocessors with 64-bit addressing, this
level of translation is not necessary.
The paper also points out how Opal differs from the conventional systems.
The paper also discusses the tradeoffs of the single address space model and
Opalís relation to other systems.

I think Opal is significant because it exploited modern 64-bit processors to
meet the goals of previous systems in a way that was simple, efficient and
general.

______________________________________________________
Get Your Private, Free Email at http://www.hotmail.com