|
ABSTRACT
Experience with the design and implementation of a number of computer systems, and study of many other systems, has led to some general hints for system design which are described here. They are illustrated by a number of examples, ranging from hardware such as the Alto and the Dorado to applications programs such as Bravo and Star.
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.
 |
1
|
|
 |
2
|
|
| |
3
|
Boggs, D.R. et. al. Pup: an internetwork architecture. IEEE Trans. Communications COM-28, 4, April 1980, p 612-624.
|
| |
4
|
Breed, L.M and Lathwell, R.H. The implementation of APL/360. In Interactive Systems for Experimental Applied Mathematics, Klerer and Reinfelds, eds., Academic Press, 1968, p 390-399.
|
| |
5
|
Kathryn Heninger Britton , R. Alan Parker , David L. Parnas, A procedure for designing abstract interfaces for device interface modules, Proceedings of the 5th international conference on Software engineering, p.195-204, March 09-12, 1981, San Diego, California, United States
|
| |
6
|
|
| |
7
|
Burton, R.R. et. al. Interlisp-D overview. In Papers on Interlisp-D, Technical report SSL-80-4, Xerox Palo Alto Research Center, 1981.
|
| |
8
|
Clark, D.W. et. al. The memory system of a high-performance personal computer. IEEE Trans. ComputersTC-30, 10, Oct. 1981, p 715-733.
|
| |
9
|
Creasy, R.J. The origin of the VM/370 time-sharing system, IBM J. Res. Develop. 25, 5, Sep. 1981, p 483-491.
|
| |
10
|
Deutsch, L.P. and Grant, C.A. A flexible measurement tool for software systems. Proc IFIP Cong. 1971, North-Holland.
|
 |
11
|
|
| |
12
|
Deutsch, L.P. Private communication, February 1982.
|
 |
13
|
|
 |
14
|
|
 |
15
|
|
| |
16
|
Gifford, D.K. Weighted voting for replicated data. Operating Systems Review13, 5, Dec. 1979, p 150-162.
|
 |
17
|
Jim Gray , Paul McJones , Mike Blasgen , Bruce Lindsay , Raymond Lorie , Tom Price , Franco Putzolu , Irving Traiger, The Recovery Manager of the System R Database Manager, ACM Computing Surveys (CSUR), v.13 n.2, p.223-242, June 1981
[doi> 10.1145/356842.356847]
|
 |
18
|
|
| |
19
|
Hoare, C.A.R. Hints on programming language design. SIGACT/SIGPLAN Symposium on Principles of Programming Languages, Boston, Oct. 1973.
|
 |
20
|
|
| |
21
|
Ingalls, D. The Smalltalk graphics kernel. Byte6, 8, Aug. 1981, p 168-194.
|
 |
22
|
|
| |
23
|
Knuth, D.E. An empirical study of Fortran programs. Software—Practice and Experience1, 2, Mar. 1971, p 105-133.
|
| |
24
|
Lampson, B.W. Bravo manual. In Alto Users Handbook, Xerox Palo Alto Research Center, 1976.
|
 |
25
|
|
| |
26
|
Lampson, B.W. et. al. Electronic image processing system. U.S. Patent 4,203,154, May 1980.
|
| |
27
|
Lampson, B.W. Replicated commit. Circulated at a workshop on Fundamental Principles of Distributed Computing, Pala Mesa, Ca., Dec. 1980.
|
| |
28
|
|
| |
29
|
Lampson, B.W. and Sproull, R.S. An open operating system for a single-user machine. Operating Systems Review13, 5, Dec. 1979,p 98-105.
|
 |
30
|
|
 |
31
|
|
| |
32
|
McQuillan, J.M. and Walden, D.C. The ARPA network design decisions. Comput. Networks1, Aug. 1977, p 243-289.
|
 |
33
|
|
| |
34
|
Mitchell, J.G. Design and Construction of Flexible and Efficient Interactive Programming Systems. Garland, 1979.
|
 |
35
|
|
| |
36
|
Needham, R.M. Personal communication. Dec. 1980.
|
| |
37
|
|
 |
38
|
|
| |
39
|
|
| |
40
|
Paxton, W.H. A client-based transaction system to maintain data integrity. Operating Systems Review13, 5, Dec. 1979, p 18-23.
|
 |
41
|
|
 |
42
|
David D. Redell , Yogen K. Dalal , Thomas R. Horsley , Hugh C. Lauer , William C. Lynch , Paul R. McJones , Hal G. Murray , Stephen C. Purcell, Pilot: an operating system for a personal computer, Communications of the ACM, v.23 n.2, p.81-92, Feb. 1980
[doi> 10.1145/358818.358822]
|
| |
43
|
|
| |
44
|
Ritchie, D.M. and Thompson, K. The Unix time-sharing system. Bell Syst. Tech. J. 57, 6, July 1978, p 1905-1930.
|
| |
45
|
Rovner, P. Private communication, Dec. 1982.
|
| |
46
|
Saltzer, J.H., et. al. End-to-end arguments in system design. Proc. 2nd Int'l. Conf. Distributed Computing Systems, Paris, April 1981, p 509-512.
|
| |
47
|
Smith, D.C. et. al. Designing the Star user interface. Byte 7, 4, April 1982, p 242-282.
|
| |
48
|
|
 |
49
|
|
| |
50
|
Sturgis, H.E. A Post-Mortem for a Time-Sharing System. Technical report CSL-74-1, Xerox Palo Alto Research Center, 1974.
|
 |
51
|
|
 |
52
|
|
| |
53
|
Thacker, C.P. et. al. Alto: a personal computer. In Computer Structures: Readings and Examples, 2nd ed., Siewiorek, Bell and Newell, eds., McGraw-Hill, 1981.
|
 |
54
|
|
CITED BY 48
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
R. H. Patterson , G. A. Gibson , E. Ginting , D. Stodolsky , J. Zelenka, Informed prefetching and caching, ACM SIGOPS Operating Systems Review, v.29 n.5, p.79-95, Dec. 3, 1995
|
|
|
|
|
|
|
|
|
Dejan Milojicic , Alan Messer , James Shau , Guangrui Fu , Alberto Munoz, Increasing relevance of memory hardware errors: a case for recoverable programming models, Proceedings of the 9th workshop on ACM SIGOPS European workshop: beyond the PC: new challenges for the operating system, September 17-20, 2000, Kolding, Denmark
|
|
|
Michael Saks , Nir Shavit , Heather Woll, Optimal time randomized consensus—making resilient algorithms fast in practice, Proceedings of the second annual ACM-SIAM symposium on Discrete algorithms, p.351-362, January 28-30, 1991, San Francisco, California, United States
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Dahlia Malkhi , Michael Reiter , Rebecca Wright, Probabilistic quorum systems, Proceedings of the sixteenth annual ACM symposium on Principles of distributed computing, p.267-273, August 21-24, 1997, Santa Barbara, California, United States
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Manish Anand , Edmund B. Nightingale , Jason Flinn, Ghosts in the machine: interfaces for better power management, Proceedings of the 2nd international conference on Mobile systems, applications, and services, June 06-09, 2004, Boston, MA, USA
|
|
|
|
|
|
|
|
|
Andrea C. Arpaci-Dusseau , Remzi H. Arpaci-Dusseau , Nathan C. Burnett , Timothy E. Denehy , Thomas J. Engle , Haryadi S. Gunawi , James A. Nugent , Florentina I. Popovici, Transforming policies into mechanisms with infokernel, Proceedings of the nineteenth ACM symposium on Operating systems principles, October 19-22, 2003, Bolton Landing, NY, USA
|
|
|
|
|
|
Andrea C. Arpaci-Dusseau , Remzi H. Arpaci-Dusseau , Lakshmi N. Bairavasundaram , Timothy E. Denehy , Florentina I. Popovici , Vijayan Prabhakaran , Muthian Sivathanu, Semantically-smart disk systems: past, present, and future, ACM SIGMETRICS Performance Evaluation Review, v.33 n.4, March 2006
|
|
|
|
|
|
|
|
|
Anawat Chankhunthod , Peter B. Danzig , Chuck Neerdaels , Michael F. Schwartz , Kurt J. Worrell, A hierarchical internet object cache, Proceedings of the Annual Technical Conference on USENIX 1996 Annual Technical Conference, p.13-13, January 22-26, 1996, San Diego, CA
|
|
|
|
|
|
Kevin Fu , Emil Sit , Kendra Smith , Nick Feamster, Dos and don'ts of client authentication on the web, Proceedings of the 10th conference on USENIX Security Symposium, p.19-19, August 13-17, 2001, Washington, D.C.
|
|
|
|
|
|
Dejan Milojicic , Steve Hoyle , Alan Messer , Albert Munoz , Lance Russell , Tom Wylegala , Vivekanand Vellanki , Stephen Childs, Global memory management for a multi computer system, Proceedings of the 4th conference on USENIX Windows Systems Symposium, p.12-12, August 03-04, 2000, Seattle, Washington
|
|
|
Ian Goldberg , David Wagner , Randi Thomas , Eric A. Brewer, A secure environment for untrusted helper applications confining the Wily Hacker, Proceedings of the 6th conference on USENIX Security Symposium, Focusing on Applications of Cryptography, p.1-1, July 22-25, 1996, San Jose, California
|
|
|
Kevin Fu , Emil Sit , Kendra Smith , Nick Feamster, Dos and don'ts of client authentication on the web, Proceedings of the 10th conference on USENIX Security Symposium, p.19-19, August 13-17, 2001, Washington, D.C.
|
|
|
Douglas Thain , Sander Klous , Justin Wozniak , Paul Brenner , Aaron Striegel , Jesus Izaguirre, Separating Abstractions from Resources in a Tactical Storage System, Proceedings of the 2005 ACM/IEEE conference on Supercomputing, p.55, November 12-18, 2005
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Allen Clement , Edmund Wong , Lorenzo Alvisi , Mike Dahlin , Mirco Marchetti, Making Byzantine fault tolerant systems tolerate Byzantine faults, Proceedings of the 6th USENIX symposium on Networked systems design and implementation, p.153-168, April 22-24, 2009, Boston, Massachusetts
|
|