ACM Home Page
Please provide us with feedback. Feedback
Third Generation Computer Systems
Full text PdfPdf (3.52 MB)
Source ACM Computing Surveys (CSUR) archive
Volume 3 ,  Issue 4  (December 1971) table of contents
Pages: 175 - 216  
Year of Publication: 1971
ISSN:0360-0300
Author
Peter J. Denning  Department of Electrical Engineering, Princeton University, Princeton, New Jersey
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 15,   Downloads (12 Months): 128,   Citation Count: 30
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/356593.356595
What is a DOI?

ABSTRACT

The common features of third generation operating systems are surveyed from a general view, with emphasis on the common abstractions that constitute at least the basis for a “theory” of operating systems. Properties of specific systems are not discussed except where examples are useful. The technical aspects of issues and concepts are stressed, the nontechnical aspects mentioned only briefly. A perfunctory knowledge of third generation systems is presumed.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
A1
ABATE, J.; AND H. DUBNER. "Optimizing the performance of a drum-like storage." IEEE Trans. Computers C-18, 11 (Nov. 1969), 992-997. A description and analysis of the shortestaccess-time-first queueing discipline, which minimizes the accumulated latency time of requests for rotating-medium auxiliary stores.
 
A2
ACM. "Storage Allocation Symposium" (Princeton, N.J., June 1961). Comm. ACM 4, 10 (Oct. 1961). These papers argue the cases and techniques for static and dynamic storage Mloeation. They provide a picture of the state of considered thought on storage allocation as of 1961.
 
A3
ACM. "Proc. Symposium on Operating System Principles" (Gatlinburg, Tenn., Oct. 1967). Some of the papers appear in Comm. ACM 11, 5 (May 1968). These papers provide, collectively, a summary of the ideas through the mid 1960s. The session titles are: Virtual Memory, Memory Management, Extended Core Memory Systems, Philosophies of Process Control, System Theory and Design, and Computer Networks and Communications.
 
A4
ACM. Proc. Symposium on Problems in the Optimization of Data Communications Systems (Pine Mr., Ga., Oct. 1969). These papers provide a summary of ideas on computer data communications and networks as of 1969. The session titles are: Advanced Networks; Advances in Data Communications Technology; Preprocessors for Data Communications; Legal, Political, and Privacy Considerations; Graphic Displays and Terminals; Systems Optimization; Human Factors; and Software Implications.
 
A5
ACM. Proc. 2nd Symposium on Operating Systems Principles. (Princeton Univ., Oct. 1969). These papers provide, collectively, a summary of ideas through the late 1960s. The session titles include : General Principles of Operating Systems Design; Virtual Memory Implementation; Process Management and Communications; Systems and Techniques; and Instrumentation and Measurement.
 
A6
ACM. Record of the Project MAC Conf. on Concurrent Systems and Parallel Computation (Wood's Hole, Mass., June 1970). These papers deal with various aspects of parallel computation, such as Petri Net theory, program schemata, and speed-independent computation. A complete bibliography of pertinent literature is included.
 
A7
ACM. Proc. Symposium on System Performance Evaluation (Harvard Univ., Cambridge, Mass., April 1971). These papers deal with various aspects of the performance evaluation problem. The session titles are: Instrumentation, Queueing Theoretic Models, Simulation Models, Measurement and Performance Evaluation, and Mathematical Models.
 
A8
ALEXANDER, M. T. "Time sharing supervisor programs (notes)." Univ. Michigan Computer Center, May 1969. A comparison of four systems: the Michigan Time Sharing System (MTS), MULTICS, CP/ 67, and TSS/360.
A9
 
B1
BELADY, L. A. "A study of replacement algorithms for virtual storage computers." IBM Systems J . 5, 2 (1966), 78-101. A detailed empirical study covering properties of program behavior manifested through demand paging algorithms. Various algorithms are compared for different memory and page sizes. An optimal algorithm, MIN, is proposed.
B2
B3
 
B4
BRINCH HANSEN, P. (ED.). RC-4000 software multiprogramming system. A/S Regnecentralen, Falkoner Alle 1, Copenhagen F, Denmark, April 1969. The description of the RC-4000 system: its philosophy, organization, and characteristics.
B5
B6
C1
 
C2
COFFFMAN, E. G., JR.; AND L. KLEINROCK. "Computer scheduling methods and their countermeasures." In Proe. AFIPS 1968 SJCC, Vol. 32, AFIPS Press, Montvale, N.J., 11-21. A review of the basic time-sharing scheduling models and results, and of ways to gain high priority for service.
 
C3
CORBATO, F .J . "PL/I as a tool for systems programming." Datamation 15, 5 (May 1969), 68-76. Argues the case for a high-level systems programming language, and recounts the MUL- TICS experience with PL/I.
 
C4
CORBATo, F. J.; M. MERWIN-DAGGET; AND R. C. DALEY. "An experimental time sharing system." In Proc. AFIPS 1962 SJCC, Vol. 21, Spartan Books, New York, 335-344. Also in {R2}. Overview of the CTSS (Compatible Time Sharing System) at MIT, including the proposal for the multilevel feedback queue.
 
C5
CORBATO, F. J.; AND V. A. VYSSOTSKY. "Introduction and overview of the MULTICS system." In Proc. AFIPS 1965 FJCC, Vol. 27, Pt. 1, Spartan Books, New York, 185-196. Also in {R2}. A description of the hardware and software facilities for the MULTICS (MULTiplexed Information and Computing Service) system at MIT.
 
C6
CREECtt, B.A. "Implementation of operating systems." In IEEE 1970 Internatl. Convention Digest, IEEE Publ. 70-C-15, 118-119. Stresses the importance of a programming language for systems programming, and reports experience with the Burroughs B6500.
 
C7
CRITCHLOW, A. J. "Generalized multiprogramming and multiprocessing systems." In Proc. AFIPS 1963 FJCC, Vol. 24, Spartan Books, New York, 107-126. A review tracing the evolution of multiprogramming and multiprocessing techniques and concepts through the early 1960s.
 
C8
CRISMAN, P. A. (ED.). The compatible time sharing system: a programmer's guide. MIT Press, Cambridge, Mass., 1965. The complete description and specification of CTSS.
D1
 
D2
DALEY, R. C.; AND P. G. NEUMANN. "A general-purpose file system for secondary storage." In Proc. AFIPS 1965 FJCC, Vol. 27, Pt. 1, Spartan Books, New York, 213-229. Describes a file directory hierarchy structure, its use and conventions, and implementation problems.
D3
 
D4
DENNING, P .J . "Thrashing: its causes and prevention." In Proc. AFIPS 1968 FJCC, Vol. 33, Pt. 1, AFIPS Press, Montvale, N.J., 915-922. A definition of, and explanation for, thrashing (performance collapse due to overcommitment of main memory) is offered, using the working set model {D3} as a conceptual aid. Some ways of preventing thrashing are discussed.
 
D5
DENNING, P. J. "Equipment configuration in balanced computer systems." IEEE Trans. Computers C-18, 11 (Nov. 1969), 1008-1012. Some aspects of designing systems with understandable behavior are defined and applied to the equipment configuration problem.
D6
D7
D8
 
D9
DENNIS, J. B. "Programming generality, parallelism, and computer architecture." In Proc. IFIP Cong. 1968, Vol. 1, North-Holland Publ. Co., Amsterdam, 484-492. (Also in MIT Project MAC Computation Structures Group Memo No. 32.) Defines "programming generality"--the ability to construct programs from collections of modules whose internal operations are unknown-and explores its consequences in system design.
 
D10
DENNIS, J.B. "Future trends in time sharing systems." MIT Project MAC Computation Structures Group Memo No. 36-1, June 1969. Classifies time-sharing systems and emphasizes the importance of programming generality in achieving the "information utility" and in solving the "software problem."
D11
D12
 
D13
DIJKSTRA, E.W. "Cooperating sequential processes." In Programming languages, F. Genuys (Ed.), Academic Press, New York, 1968, 43-112. The first study of parallel processes and concurrent programming, including a well-illustrated and complete development of the minimum requirements on the coordination and synchronization control primitives.
D14
F1
G1
 
G2
GAVER, D .P . "Statistical methods for improving simulation efficiency." Carnegie-Mellon Univ., Pittsburgh, Pa., Management Science Research Group Report No. 169, Aug. 1969. Discusses a number of methods for shortening the computation time of simulations by improving the rate of convergence.
G3
 
G4
GRAHAM, G. S. "Protection structures in operating systems." Master of Science Thesis, Univ. Toronto, Toronto, Ont., Canada, Aug. 1971. A detailed investigation of Lampson's recta-theory {L2} and its system implications, together with its application to Project SUE at the University of Toronto.
H1
 
H2
HAVENDER, J. W. "Avoiding deadlock in multitasking systems." IBM Systems J. 7, 2 (1968), 74 84. Treats some of the deadlock problems encountered in OS/360, and proposes the "ordered resource usage" method of preventing deadlock.
H3
 
H4
 
H5
HORNING, J. J.; AND B. RANDELL. "Structuring complex processes." IBM Thomas J. Watson Research Center Report RC-2459, May 1969. A formal, state-machine-oriented nlodel for the definition, control, and composition of processes.
 
I1
IBM. "Operating System 360 concepts and facilities." In Programming Systems and Languages {R2}, 598-646. Excerpts from IBM documentation on the structure and operation of OS/360.
 
I2
IEEE. "Proc. 1969 Computer Group Conference." IEEE Trans. Computers C-18, 11 (Nov. 1969). Of interest is the session on "Computer system models and analysis."
I3
J1
 
K1
KILBURN, T.; D. B. G. EDWARDS; M. J. LANI- GAN; AND F. H. SUMNER. "One-level storage system." IRE Trans. EC-11 (April 1962), 223- 238. The first detailed description of the paging mechanism on the Atlas Computer, including the loop-detecting "learning" algorithm for page replacement.
K2
 
K3
KLEINROCK, L. "A continuum of time sharing scheduling algorithms." In Proc. AFIPS 1970 SJCC, Vol. 36, AFIPS Press, Montvale, N.J., 453-458. A piecewise linear priority function is associated with each job, and the scheduler runs the job or jobs of highest priority. A job enters the system with zero priority, it gains priority while waiting according to a "waiting slope," and i t gains priority while running according to a "serving slope." A two-dimensional plane displays the possible combinations of the two slopes and the corresponding scheduling algorithms.
 
L1
LAMPSON, B.W. "Dynamic protection structures." In Proc. AFIPS 1969 FJCC, Vol. 35, AFIPS Press, Montvale, N.J., 27-38. An exposition of the programming implications and power of a system of protection based on the capability idea {D11} with hardware similar to that discussed in {W6}.
 
L2
LAMPSON, B.W. "Protection." In Proc. 5th Annual Princeton Conf., Princeton Univ., March 1971. A generalized model for protection systems, incorporating an "access matrix" and nonforgeable "domain identifiers," is proposed. Existing protection systems are shown to be special cases. Properties of "correct" protection systems are treated.
 
L3
LIPTAV, J. S. "Structural aspects of the System/360 model 85: the cache." IBM Systems J . 7, 1 (1968), 15 21. A description of the organization and behavior of the cache store on the IBM 360/85.
M1
 
M2
MATTSON, R. L.; J. GECSEI; D. R. SLUTZ ; AND I. L. TRAIGER. "Evaluation techniques for storage hierarchies." IBM Systems J . 9, 2 (1970), 78-117. The concept of "stack algorithm" as a model for paging algorithms is introduced and its properties studied. Efficient algorithms are derived for determining the "success funct i o n " versus memory size for a given paging algorithm. Priority, optimal, and random-replacement algorithms are shown to be stack algorithms.
M3
M4
N1
 
P1
PARKHILL, D. The challenge of the computer utility. Addison-Wesley Publ. Co., Reading, Mass., 1966. A good description of the issues, philosophy, methods, hopes, and fears t h a t existed during the early 1960s, when enthusiasm for the computer utility ran high.
P2
R1
 
R2
ROSEN, S. (ED.). Programming systems and languages. McGraw-Hill, New York, 1967. A collection of "classic" papers on programming language design, definition, assemblers, compilers, and operating systems to 1966.
R3
R4
 
S1
 
S2
S3
S4
 
S5
SELWYN, L.L. "Computer resource accounting in a time-sharing environment." In Proc. AFIPS 1970 SJCC, Vol. 36, AFIPS Press, Montvale, N.J., 119-129. A description of the management, accounting, and pricing systems of CTSS-like systems. Should be read in conjunction with {N1, $7,w8}.
 
S6
S7
 
T1
TRIMBLE, G., JR. "A time-sharing bibliography." Computing Reviews 9, 5 (May 1968), 291-301.
 
V1
W1
 
W2
Wegner, P. (Ed.). Introduction to systems programming. Academic Press, New York, 1964. A collection of some "classic" papers on operating systems principles and design during the early 1960s.
 
W3
 
W4
WILKES, M. V. "Slave memories and dynamic storage allocation." IEEE Trans. Computers C-14 (1965), 270-271. Proposes an automatic multilevel memory system, the predecessor of the "cache store" {L3}.
W5
 
W6
 
W7
WILKES, M.V. "A model for core space allocation in a time sharing system." In Proc. AFIPS 1969 SJCC, Vol. 34, AFIPS Press, Montvale, N.J., 265-271. Uses experience with time-sharing systems to develop a minimal relationship between processor and core allocation policies.
 
W8
WILKES, M. V.; AND D. F. HARTLEY. "The management system--a new species of software?" Datamation 15, 9 (Sept. 1969), 73-75. Outlines the motivation and requirements for a management system as illustrated by the Cambridge University Multiple Access System. Should be read in conjunction with {N1, S5, S7}.
W9
W10

CITED BY  30