Classic Operating Systems: From Batch Processing to Distributed SystemsPer Brinch Hansen This remarkable anthology allows the pioneers who orchestrated the major breakthroughs in operating system technology to describe their work in their own words. From the batch processing systems of the 1950s to the distributed systems of the 1990s, Tom Kilburn, David Howarth, Bill Lynch, Fernando Corbato, Robert Daley, Sandy Fraser, Dennis Ritchie, Ken Thompson, Edsger Dijkstra, Per Brinch Hansen, Soren Lauesen, Barbara Liskov, Joe Stoy, Christopher Strachey, Butler Lampson, David Redell, Brian Randell, Andrew Tanenbaum, and others describe the systems they designed. The volume details such classic operating systems as the Atlas, B5000, Exec II, Egdon, CTSS, Multics, Titan,Unix, THE, RC 4000, Venus, Boss 2, Solo, OS 6, Alto, Pilot, Star, WFS, Unix United, and Amoeba systems. An introductory essay on the evolution of operating systems summarizes the papers and helps puts them into a larger perspective. This provocative journey captures the historic contributions of operating systems to software design, concurrent programming, graphic user interfaces, file systems, personal computing, and distributed systems. It also fully portrays how operating systems designers think. It's ideal for everybody in the field, from students to professionals, academics to enthusiasts. |
Other editions - View all
Classic Operating Systems: From Batch Processing to Distributed Systems Per Brinch Hansen Limited preview - 2013 |
Classic Operating Systems: From Batch Processing to Distributed Systems Per Brinch Hansen No preview available - 2010 |
Common terms and phrases
activity allocation allow Amoeba answer begin block Brinch buffer called character client command communication compiler complete contains copy core coroutine created defined described device disc disk distributed document drum entry error example execution existing facilities Figure file system function given hardware identifier implementation indicate initial input interface internal process interrupt language machine magnetic tape means mechanism memory module monitor object operating system output particular performance peripheral Pilot possible problem procedure protection queue record reference remote removed request resource response result routines segment server shared single space specified storage stream structure supervisor tape terminal transfer unit UNIX waiting write written
Popular passages
Page 164 - Work reported herein was supported in part by Project MAC, an MIT research program sponsored by the Advanced Research Projects Agency, Department of Defense, under Office of Naval Research contract number Nonr-4102(01). Reproduction in whole or in part is permitted for any purpose of the United States government.
Page 116 - Before proceeding further, it is best to give a more precise interpretation to timesharing. One can mean using different parts of the hardware at the same time for different tasks, or one can mean several persons making use of the computer at the same time. The first meaning, often called multiprogramming, is oriented towards hardware efficiency in the sense of attempting to attain complete utilization of all components ' ' ' . The second meaning of time-sharing, which is meant here, is primarily...
Page 487 - Dozens of experimental programs were written for the Alto by members of the Xerox Palo Alto Research Center. Without the creative ideas of the authors of those systems, Star in its present form would have been impossible. In addition, we ourselves programmed various aspects of the Star design...
Page 193 - Interdata 8/32 computers. It offers a number of features seldom found even in larger operating systems, including i A hierarchical file system incorporating demountable volumes...
Page 196 - /" refers to the root itself. A path name not starting with "/" causes the system to begin the search in the user's current directory. Thus, the name alpha/beta specifies the file named beta in subdirectory alpha of the current directory. The simplest kind of name, for example alpha, refers to a file which itself is found in the current directory.
Page 194 - UNIX can run on hardware costing as little as 840,000, and less than two manyears were spent on the main system software. Yet UNIX contains a number of features seldom offered even in much larger systems. It is hoped, however, the users of UNIX will find that the most important characteristics of the system are its simplicity, elegance, and ease of use. Besides the system proper, the major programs available under UNIX are: assembler, text editor based on QED...
Page 196 - As will be seen, however, it is by no means necessary that a program reside in this directory for it to be executed. Files are named by sequences of 14 or fewer characters. When the name of a file is specified to the system, it may be in the form of a path name, which is a sequence of directory names separated by slashes "/" and ending in a file name. If the sequence begins with a slash, the search begins in the root directory.
Page 231 - It is undefined— ie logically immaterial-which of the waiting processes is then removed from the waiting list. Note 3. A consequence of the mechanisms described above is that a process whose dynamic progress is permissible can only loose this status by actually progressing, ie by performance of a P-operation on a semaphore with a value that is initially nonpositive. During system conception it transpired that we used the semaphores in two completely different ways. The difference is so marked that,...
Page 117 - ... computer made simultaneously available to many users in a manner somewhat like a telephone exchange. Each user would be able to use a console at his own pace and without concern for the activity of others using the system. This console could as a minimum be merely a typewriter but more ideally would contain an incrementally modifiable selfsustaining display. In any case, data transmission requirements should be such that it would be no major obstacle to have remote installation from the computer...


