Original Publication Date: 1981-Jun-01
Included in the Prior Art Database: 2005-Nov-11
Software Patent Institute
D. A. Anderson: AUTHOR [+3]
AbstractResearch during the last decade has revealed techniques by which future operating systems can avoid the problems associated with previous and present systems.
THIS DOCUMENT IS AN APPROXIMATE REPRESENTATION OF THE ORIGINAL.
This record contains textual material that is copyright ©; 1981 by the Institute of Electrical and Electronics Engineers, Inc. All rights reserved. Contact the IEEE Computer Society http://www.computer.org/ (714-821-8380) for copies of the complete work that was the source of this textual material and for all use beyond that as a record from the SPI Database.
D. A. Anderson
Bell Telephone Laboratories
Research during the last decade has revealed techniques by which future operating systems can avoid the problems associated with previous and present systems.
An operating system is a program that resides on a computer and acts as an interface between the user or application programmer and the bare machine. It is a layer of software that surrounds and hides the physical hardware-a relationship depicted in Figure 1. The chief purpose of an operating system is to allow several users or applications to share the computer in an efficient and noninterfering manner.
Although an computers have some form of operating system, exactly which program modules are part of the operating system can be a matter of opinion. Generally, those modules controlling machine resources such as processors, primary and secondary memory, and peripheral devices are considered the operating system. Compilers, loaders, debuggers, and other application-oriented modules are usually not considered part of the operating system.
While operating systems have existed since the first stored program computers over 30 years ago, the common features and problems of operating systems have been studied extensively only in the last 10 to 15 years. Concepts and techniques resulting from this research are applicable to all operating systems and help us to avoid many of the pitfalls of the past. Highlights from this research include the notion of processes and monitors for the synchronization of parallel tasks,memory management techniques, and improvements in system performance, protection, and reliability.
The earliest operating systems did little more than initialize the hardware, bringing the machine up into a state to run the first job. Initialization remains an important function of all operating systems. However, in most modern operating systems, this function now includes not only total initialization for initial system bring up but also
partial initialization to flush an insane job or recover from a transient hardware error without losing all active jobs.
Total initialization is also called "bootstrapping" or "initial program loading." Typically, the bootstrap mechanism consists of either hardware or firmware reading in a small bootstrap program which in turn reads in the operating system. In addition, the processor, memory, and peripherals are initialized to the extent necessary before accepting the first external inputs or jobs.
(Image Omitted: Figure 1. Operating system relationsh...