pilot, opel

Syed Adnan (sadnan@ucsd.edu)
Tue, 18 Apr 2000 00:58:39 -0700

Name: Syed Adnan
Date: 4-17-00

Sharing and Protection in a Single Address Space OS

Authors of this paper argue that hardware improvements, especially in amount of address space available to operating systems, provides us with the opportunity to reexamine our fundamental operating system structure. This paper is about experimenting with memory sharing and protection support of single address space operating system for wide-address architecture. This problem is important and interesting that it provides an efficient protection mechanism, simplifies sharing, and communication. Paper has a lot of similarities from previous systems, but it does use those concepts little differently. Opal is segmented system like Multics that they both make use of segments, but opal segments are directly visible in virtual memory by all applications. Old concepts are being used but with single address space.

The main approach to this paper is that most systems emulate large address space on small-address hardware; however, author believe that this emulation is no longer necessary that modern operating systems are adding unnecessary complexity since the hardware these systems trying to emulate is already available. Therefore that emulation cause extra complexity. From this perspective, the design of Opal utilize wide-architecture for single add. This scheme allows the operating system to expand the choices in the structuring of computations, the use of protection, sharing, storage, and communication of data. One key in this structure is that protection is completely separate from addressing. Use of protection domains, segments and capabilities are used to provide protection and inter-domain communication.
With their experiments, authors of this paper were able to show that opal does add performance, safety, or both relative to current implementation choices on conventional operating systems. They were able to show that tradeoff of using single address space system are reasonable given sufficient hardware space.
This paper is educational that it takes a very different approach from previous papers, and does show things in a different prospective. How a system would work given a single address space to provide all services provided by a traditional system. However, results of this system are not off the chart. This system proves to be better only on very specific applications that are not used by most users. A lot more experimentation needs to be done on this concept to be certain of this architecture.
Format of paper is probably the best one I have seen so far. Easy to understand and almost follows all the guidelines which were provided by professor in class.

Name: Syed Adnan
Date: 4-18-00

Pilot: An OS for a Personal Computer

Pilot operating system was created for a single user to run on a relatively powerful computer at that time. Optimized for single user, pilot provides many powerful facilities for a single user, which is hard to achieve in a multi-user OS. Since it is a single-user OS, there is not a strong notion of protection. Use of virtual memory, 'flat' file system, programming support and network communication are issues mention in detailed in this paper.
Because of fact that it is a single user operating system author they had a lot of room to do things, which are optimized for a single user operating system. For example assumption of not having an absolute protection system since there is only one user, there are no programs written by other users who may do something malicious. However, OS does have defensive protection by type checking instead of having an absolute protection.
Resources are not oriented towards distribution of resources because there is no distribution among different user's processors. There is been a strong distinction between interface and implementation of pilot modules.
Pilot provides a flat file system in a sense that files have no recognized relationships with each other means doest have any directory structure. Capabilities are being used to create, delete, and update files. Each file has a 64-bit universal identifiers UID that identifies any file uniquely anywhere anytime. A linear virtual system is provided, and all computation in system are being done using this virtual memory. Each page has flags for protection. I/O devices are available using low-level procedures and stream interfaces. Shared memory style inter-process communication is being used for tightly coupled processes. A detailed network protocols are available in the system. Though hard to tell that when notions of sockets, and routers were introduced, but this paper mentions these concepts as newly introduced material.
Motivation for single user operating system came from large personal computers, which does not need to have a multi user support. That allowed a less complex protection system, and provided sophisticated features at low cost. Pilot operating system's real significance is in integration of number of good ideas. Previous operating systems did not really had support for client programs. The combination of streams, packet communication, virtual memory maps, and large file space provides an environment with relatively few limitations.
I like the idea of a single user operating system in a sense that is not a multipurpose operating system. I have mention that in one of my earlier evaluations that we have such specialize machine running now a days that a general purpose operating system will not do any justice to those machine. Router is one of those machines, which require a special type of operating system build just for router. Palm pilots are another good example of such operating systems. This paper is well written, and ideas of this paper apply now days even more than at the date of this paper. I believe that there is a lot of work can be done on this field.