Advanced Operating Systems
Total Page:16
File Type:pdf, Size:1020Kb
Robert L. Brown and Peter J. Denning, Research Institute for Advanced Computer Science Walter F. Tichy, Purdue University Operating systems of 1955 were ing. Local networks, such as Ethernet, control programs a few thou- ring nets, and wideband nets, and net- sand bytes long that scheduled jobs, work protocols, such as X.25, PUP, drove peripheral devices, and billed and TCP/IP, allow large systems to be users. Operating systems of 1984 are constructed from many small ones. much larger both in size and respon- The available hardware has grown sibility. The largest ones, such as rapidly in power and sophistication. Honeywell's Multics or IBM's MVS, In view of these rapid hardware ad- are tens of millions of bytes long. In- vances, we feel compelled to ask termediate ones, such as Unix from whether hardware will eventually ob- AT&T Bell Laboratories or VMS viate software control programs. Is Far from fading out of from Digital Equipment Corporation, the intellectual core recorded in are several hundreds of thousands of operating system texts outmoded? Are the picture, operating bytes long. Even the smallest, most operating systems an outmoded tech- systems continue to pared-down systems for personal nology? On the contrary-we believe meet the challenges of computers are tens of thousands of that the power and complexity of the new hardware develop- bytes long. new hardware intensifies the need for ments. Their success The intellectual value of operating operating systems, that the intellectual lies in abstraction system research was recognized in the core contains the concepts needed for levels that hide early 1970's. Virtually every cur- today's computer systems, and that riculum in computer science and en- operating systems are and will remain nonessential details gineering now includes a course on essential. from the user. operating systems, and texts are nu- merous. The continuing debates- over the set of concepts that should be What is an operating system? taught and over the proper mix be- tween concepts and implementation Before we can explain our view on projects-are signs of the field's vi- the future utility of operating systems, tality. we need to agree on what they are. The Since 1975, personal computers for oldest definition, which says an home and business have grown into a operating system is "a control pro- multibillion-dollar industry. Ad- gram for allocating resources among vanced graphics workstations and competing tasks," describes only a microcomputers have been proliferat- small portion of a modem operating October 1984 0018-9162/O4/10000/173S01.00 © 1984 IEEE 173 sy.stem's responsibilities, and is hence sharing systems and test the many new than Multics, Unix retains most of its inadequate. operating system concepts. These in- predecessor's useful characteristics, Among the great problems faced by cluded MIT's Compatible Timeshar- such as processes, hierarchical file operating system designers is how to ing System, the University of Man- system, device independence, I/0 re- manage the comnplexity of operations chester Atlas, the University of Cam- direction, and a high-level language at manr levels of detail, from hard- bridge Multiple Access System, IBM shell. Unix dispensed with virtual wsare opeirations that take one billionth TSS/ 360, and RCA Spectra/70. The memory and the detailed protection of a second to softw are operations most ambitious project of all was system and introduced the pipe. It of- that take tenas of seconds. An early Multics (short for Multiplexed Infor- fered a large library of utility pro- stratagemi w as infortination hiding mation and Computing Service) for grams that were well integrated with confining the details of managing a the General Electric 645 (later re- the command language. Most of Unix class of "objects" within a module is written in a high-level language (C), that has a good interface with its users. allowing it to be transported to a wide With information hiding, designers Of great concern to OS designers variety of processors, from main- can protect themselves from extensive is how to manage complex frames to personal computers. 6,7 reprogramming if the hardware or operations at many levels of In systems with multiple Unix ma- some part of the software changes: the detail. chines connected by a high-speed local change affects only the small portion network, it is desirable to hide the of the software interfacing directly locations of files, users, and devices with that system component. This namled Honeywell 6180) processor. 3 from those who do not wish to deal principle has been extended from Multics simultaneously tested new with those details. Locus, a distributed isolated subsystems to an entire concepts of processes, interprocess version of Unix, satisfies this need operating system. The basic idea is to comiimunication, segmented virtual through a directory hierarchy that create a hierarchy of abstraction levels memory, page replacemeint, linking spans the entire network.8 MOS, so that at any level we can ignore the new segments to a computation on de- another distributed Unix, also uses a details of what is going on at all lower imiand, automatic mtiltiprogrammed global directory hierarchy as well as levels. At the highest level are system load control, access control and pro- automatically migrating processes users, who, ideally, are insulated from tection, hierarchical file system, device among machines to balance loads. 9 everything except what they want to independence, I/0 redirection, and a In recent years, a large family of acconmplish. Thus, a better definition high-lesel language shell. operating systems has been developed of an operating system is "a set of Another important concept of for personal computers, including softsvare extensions of primitive hard- third-generation systems was the vir- MS-DOS, PC-DOS, Apple-DOS, wvare, culminating in a virtual machine tual machine, a simulated copy of the CP/M, Coherent, and Xenix. All that serves as a high-level program- hiost. Virtual machines were first these systems have limited function, ming environment." tested around 1966 on the M44/44X being designed for 8- and 16-bit micro- Operating systems of this type can project at the IBM T. J. Watson processor chips with small memories. support diverse environments: pro- Research Center. In the early 1970's In many respects, the growth pattern gramming, text processing, real-time sirtual machines were used in IBM's of personal computers is repeating processing, office automation, data- CP-67 system, a timesharing system that of mainframes in the early 1960's base, and hobbyist. that assigned each user's process to its for example, multiprocess oper- own virtual copy of the IBM 360/67 ating systems for microcomputers machine. This system, which has been have appeared only recently in the Current systems moxed to the IBM 370 machine, is form of pared-down, Unix-like sys- now called VM/370.4,' Because each tems such as Coherent and Xenix. Be- Most operatiing systems for large sirtuLal machine can run a different cause only large firms can sell enough mainframes are direct descendants of copy of the operating system, VM/370 machines to make their operating third-generation systems, such as is effective for developing new operat- systems viable, there is strong pressure Honeywell Multics, IBM MVS, VM/ ing systeim.s within the current oper- for standard operating systems. The 370, and CDC Scope. These systems ating systemn. However, because vir- emerging standards are PC-DOS, CP/ introduced important concepts such as tial machines are well isolated, com- M, and Unix. timesharing, multiprogramming, vir- municatioin among them is expensive Research on operating systems con- tual memory, sequential processes and awkward. tinues. Numerous experimental sys- cooperating via semaphores, hierar- Perhaps the most influential current tems are exploring new concepts of chical file systems, and device-in- operating system is Unix, a complete system structure and distributed com- dependent I /O. reengineering of Multics, originally putation. The operating system for the Duritng the 1960's, many projects for the DEC PDP computers. Al- Cambridge CAP machine exploits the x crc established to construct time- thotugh an order of magnitude smaller hardware's microcode support for 174 COMPUTER capability addressing to implement a problems for OS designers to solve. In ticular operating system but rather in- large number of processes in separate- other words, the need for operating corporates ideas from several systems, ly protected domains. Data abstrac- systems is stronger than ever. including facilities for distributed pro- tion is easy to implement on this cessing. machine. 10 Each level is the manager of a set of Star OS, an operating system for A model operating system objects, either hardware or software, the Cm* machine, supports the "task the nature of which varies greatly force," a group of concurrent pro- Overview. In the hierarchical struc- from level to level. Each level also cesses cooperating in a computation. ture of a model operating system, deflnes operations that can be carried Star OS also uses capabilities to con- functions are separated according to out on those objects, obeying two trol access to objects. Another oper- their characteristic time scales and general rules: ating system for the Cm* machine, their levels of abstraction. Table 1 * Hierarchy. Each level adds new called Medusa, is composed of several shows an organization spanning 15 operations