Pilot is a single-user, multitasking operating system designed by Xerox PARC in early 1977. Pilot was written in the Mesa programming language, totalling about 24,000 lines of code.[1]
Developer | Xerox PARC |
---|---|
Written in | Mesa |
Working state | Historic |
Initial release | 1981 |
Available in | English |
Platforms | Xerox Star workstations |
Default user interface | Graphical user interface |
Overview
editPilot was designed as a single user system in a highly networked environment of other Pilot systems, with interfaces designed for inter-process communication (IPC) across the network via the Pilot stream interface. Pilot combined virtual memory and file storage into one subsystem, and used the manager/kernel architecture for managing the system and its resources.
Its designers considered a non-preemptive multitasking model, but later chose a preemptive (run until blocked) system based on monitors.[1] Pilot included a debugger, Co-Pilot, that could debug a frozen snapshot of the operating system, written to disk.
A typical Pilot workstation ran 3 operating systems at once on 3 different disk volumes : Co-Co-Pilot (a backup debugger in case the main operating system crashed), Co-Pilot (the main operating system, running under co-pilot and used to compile and bind programs) and an inferior copy of Pilot running in a third disk volume, that could be booted to run test programs (that might crash the main development environment).
The debugger was written to read and write variables for a program stored on a separate disk volume.
This architecture was unique because it allowed the developer to single-step even operating system code with semaphore locks, stored on an inferior disk volume. However, as the memory and source code of the D-series Xerox processors grew, the time to checkpoint and restore the operating system (known as a "world swap") grew very high. It could take 60-120 seconds to run just one line of code in the inferior operating system environment.
Eventually, a co-resident debugger was developed to take the place of Co-Pilot.[2]
Pilot was used as the operating system for the Xerox Star workstation.
See also
editReferences
edit- ^ a b Lampson, Butler W.; David D. Redell (February 1980). "Experience with Processes and Monitors in Mesa" (PDF). Communications of the ACM. 23 (2): 105–117. doi:10.1145/358818.358824. Retrieved 2007-06-22.
- ^ Gillies, Donald W. "World-Stop Debuggers". Retrieved 2024-02-24.
Further reading
edit- Horsley, T.R.; Lynch, W.C. (September 1979). "Pilot: A software engineering case history". ICSE '79: Proceedings of the 4th international conference on Software engineering. Munich, Germany. pp. 94–99.
- David D. Redell; Yogen K. Dalal; Thomas R. Horsley; Hugh C. Lauer; William C. Lynch; Paul R. McJones; Hal G. Murray; Stephen C. Purcell (February 1, 1980). "Pilot: An Operating System for a Personal Computer". Communications of the ACM. 23 (2): 81–92. doi:10.1145/358818.358822.