by Timothy Denehy

According to the authors of the Pilot paper, the design of a single-user
operating system for a personal computer is quite different from that of a
time-sharing operating system. Since a single-user environment is assumed, the
usual themes of resource allocation and protection are de-emphasized. The
Pilot system provides defensive mechanisms rather than absolute protections
because "in a single-user system, errors are a more serious problem than
maliciousness." Similarly, Pilot provides fewer resource allocation features
under the assumption that problems can be dealt with by adjusting the single
user's workload or adding more resources. Another aspect of the Pilot system
that is useful in single-user environments is the ability for a user program
to advise the kernel on the use of its virtual spaces. Such a mechanism would
not be usable in a time-sharing system because of the user program's lack of
knowledge of other programs in the system. One more single-user feature of
the Pilot system is its ability to boot-load its debugger in the case of a
program malfunction, which would be most-undesirable in a time-sharing
environment.

Although these design decisions may have been applicable at the time of
Pilot's development, I believe few of these designs apply to the personal
computing environment today. Many personal computers still support a single
user, but the demanding applications run by many users require sophisticated
resource management and an entire system view to implement efficient paging
strategies. Boot-loading to a debugging environment to inspect one program
would also be unacceptable given the variety of other user programs that may be
running at the time and the novice level of many users.