Reading List

advertisement
Reading List
Citing: This reading list is a modified subset of the Reading list of CSci555- Advanced OS course at
University of Southern California. Its link is here.
This page is under construction. The Links will be corrected in a while.
General References
1
George Coulouris, Jean Dollimore, and Tim Kindberg. Distributed Systems: Concepts and Design. Addison Wesley,
3rd Ed., 2002.
2
Tanenbaum, Andrew S. Distributed Systems:Practices and Paradigms, Prentice Hall, 2002
3Robert A. Day. How to write a scientific paper. IEEE Transactions on Professional Communication, 20:32-37, June
1977.
4Roy Levin and David D. Redell. An evaluation of the ninth SOSP submissions. Operating Systems Review,
17(3):35-40, July 1983.
Introduction
5
Characterization of Distributed Systems. Distributed Systems: Concepts and Design, chapter 1[1].
6
Design Goals. Distributed Systems: Concepts and Design, chapter 1[2].
7J.H. Saltzer, D.P. Reed and D.D. Clark. End-To-End Arguments in System Design. Proceedings of the 2nd
International Conference on Distributed Systems, 509-512, April 1981. It is here.
 The End of the End-to-End Argument (April 2000 discussion by David P. Reed)
Communication Models
8.
Andrew D. Birrel and Bruce Jay Nelson. Implementing remote procedure calls. ACM Transactions on Computer
Systems, 2(1):39-59, February 1984.
9.
Brian N. Bershad, Thomas E. Anderson, Edward D Lazowska, and Henry M. Levy. Lightweight remote procedure
call. ACM Transactions on Computer Systems, 8(1):37-55, February 1990.
10.
Nicholas Carriero and David Gelernter. The s/net's linda kernel. ACM Transactions on Computer Systems,
4(2):110-129, May 1986.
11.
Kai Li and Paul Hudak. Memory coherence in shared virtual memory systems. ACM Transactions on Computer
Systems, 7(4):321-359, November 1989.
12
Interprocess Communication. Distributed Systems: Concepts and Design, chapter 4[1]. (optional)
13
Remote Procedure Calling. Distributed Systems: Concepts and Design, chapter 5[1]. (optional)
14
Distributed Shared Memory. Distributed Systems: Concepts and Design, chapter 16[1]. (optional)
Concurrency, Transactions, Deadlock
15.
Leslie Lamport. Time, clocks, and the ordering of events in a distributed system. Communications of the ACM,
21(7):558-565, July 1978.
16.
K. M. Chandi, J. Misra and L. M. Haas Distributed Deadlock Detection ACM Transactions on Computer Systems,
1(2):144-156, May 1983.
17.
David Jefferson. Virtual time. ACM Transactions on Programming Languages and Systems, 7(3):404-425, July
1985.
18.
Kenneth P. Birman and Thomas A. Joseph. Exploiting virtual synchrony in distributed systems. In Proceedings of
the 11th ACM Symposium on Operating Systems Principles, pages 123-138, November 1987.
19Randy F. Pausch Alfred Z. Spector and Gregory Bruell. Camelot: A flexible, distributed transaction processing
system. In Proceedings of the 33rd IEEE Computer Society International Conference(Compcon 88), pages 432-436,
March 1988.
20.
David K. Gifford. Weighted voting for replicated data. In Proceedings of the 7th ACM Symposium on Operating
Systems Principles, pages 150-159, December 1979. Pacific Grove, California.
21.
Carl Hauser, Christian Jacobi, Marvin Theimer, Brent Welch, and Mark Weiser. Using threads in interactive
systems: A case study. In Proceedings of the 14th ACM Symposium on Operating Systems Principles, pages 94105, December 1993.
21A.
Leslie Lamport, Robert Shostak, and Marshall Pease. The Byzantine Generals Problem, ACM Transactions on
Programming Languages and Systems, Vol. 4, No. 3, July 1982, Pages 382-401.
22
Time and Coordination. Distributed Systems: Concepts and Design, chapter 10,11[1]. (optional)
23
Replication. Distributed Systems: Concepts and Design, chapter 14[1].
24
Shared Data and Transactions. Distributed Systems: Concepts and Design, chapter 12.1-12.3[1].
25
Concurrency Control. Distributed Systems: Concepts and Design, chapter 12.4-12.8[1].
26
Distributed Transactions. Distributed Systems: Concepts and Design, chapter 13[1].
Naming
27.
Jermome H. Saltzer. On the naming and binding of network destinations. In Proceedings of the International
Symposium on Local Computer Networks, pages 311-317, April 1982. text available as RFC 1498
28.
Andrew D. Birrell, Roy Levin, Roger M. Needham, and Michael D. Schroeder. Grapevine: An exercise in
distributed computing. Communications of the ACM, 25(4):260-274, April 1982.
29.
Michael D. Schroeder, Andrew D. Birrell, and Roger M. Needham. Experience with Grapevine: The growth of a
distributed system. ACM Transactions on Computer Systems, 2(1):3-23, February 1984.
30Douglas B. Terry, Mark Painter, David W. Riggle, and Songnian Zhou. The Berkeley internet domain server. In
Proceedings of the Summer 1984 Usenix Conference, pages 23-31, June 1984.
31Peter B. Danzig, Katia Obraczka, and Anant Kumar. An analysis of wide-area name server traffic: A study of the
domain name system. In Proceedings of SIGCOMM 92, pages 281-292, January 1992.
32.
Butler W. Lampson. Designing a global name service. In Proceedings of the 4th ACM Symposium on Principles of
Distributed Computing, August 1985.
33-
Brent B. Welch and John K. Ousterhout. Prefix tables: A simple mechanism for locating files in a distributed
system. In Proceedings of the 6th International Conference on Distributed Computing Systems, pages 184-189,
May 1986.
34.
David R. Cheriton and Timothy P. Mann. Decentralizing a global naming service for improved performance and
fault tolerance. ACM Transactions on Computer Systems, 7(2):147-183, May 1989.
35B. Clifford Neuman. The need for closure in large distributed systems. Operating Systems Review, 23(4):28-30,
October 1989.
36Douglas Comer, Ralph E. Droms, and Thomas P. Murtagh. An experimental implementation of the Tilde naming
system. Computing Systems, 4(3):487-515, Fall 1990.
37B. Clifford Neuman. The Prospero File System: A global file system based on the Virtual System Model.
Computing Systems, 5(4):407-432, Fall 1992.
38B. Clifford Neuman and Steven Seger Augart. Prospero: A base for building information infrastructure. In
Proceedings of INET'93, August 1993.
39Larry L. Peterson. The Profile naming service. ACM Transactions on Computer Systems, 6(4):341-364, November
1988.
40Stuart Sechrest and Michael McClennen. Blending hierarchical and attribute-based file naming. In Proceedings of
the 12th International Conference on Distributed Computer Systems, June 1992.
41Katia Obraczka, Peter B. Danzig, and Shih-Hao Li. Internet resource discovery services. IEEE Computer, 26(9):3543, September 1993.
42
Name Services. Distributed Systems: Concepts and Design, chapter 9[1]. (optional)
Security
43B. Clifford Neuman. Protection and security issues for future systems. In Proceedings of the Workshop on
Operating Systems of the 90s and Beyond, July 1991.
44Butler W. Lampson. A note on the confinement problem. Communications of the ACM, 16(10):613-615, October
1973.
45V. L. Voydock and S. T. Kent. Security mechanisms in high-level network protocols. ACM Computing Surveys,
15(2):135-171, June 1983.
46Roger M. Needham and Michael D. Schroeder. Using encryption for authentication in large networks of
computers. Communication of the ACM, 21(12):993-999, December 1978.
47B. Clifford Neuman and Theodore Ts'o. Kerberos: An authentication service for computer networks. IEEE
Communications, 32(9), September 1994
48M. Burrows, M. Abadi, and R. Needham. A logic of authentication. ACM Transactions on Computer Systems,
8(1):18-36, February 1990.
49Andrew D. Birrell, Butler W. Lampson, Roger M. Needham, and Michael D. Schroeder. A global authentication
service without global trust. In Proceedings of the IEEE Symposium on Security and Privacy, pages 223-230, April
1986.
50-
Tatyana Ryutov, Clifford Neuman, Dongho Kim, and Li Zhou, Integrated Access Control and Intrusion Detection
for Web Servers, In a special issue on Security in Information Systems for the IEEE Transactions on Parallel and
Distributed Systems., Vol. 14, No 9, September 2003,
51Andrew S. Tanenbaum, Robbert van Renesse, Hans van Staveren, Gregory J. Sharp, Sape J. Mullender, Jack
Jansen, and Guido van Rossum. Experience with the Amoeba distributed operating system. Communications of
the ACM, 33(12):47-63, December 1990.
Security
52M. Gasser, A. Goldstein, C. Kaufman, and B. Lampson. The Digital distributed system security architecture. In
Proceedings of the 1989 National Computer Security Conference, pages 305-319, 1989.
53B. Clifford Neuman. Proxy-based authorization and accounting for distributed systems. In Proceedings of the
13th International Conference on Distributed Computing Systems, pages 283-291, May 1993.
54
Security. Distributed Systems: Concepts and Design, chapter 7[1]. (optional)
File Systems
55Russel Sandberg, David Goldberg, Steve Kleiman, Dan Walsh, and Bob Lyon. Design and Implementation of the
Sun Network Filesystem. In Proceedings of the Summer 1985 Usenix Conference, pages 119-130, June 1985.
56Michael N. Nelson, Brent B. Welch, and John K. Ousterhout. Caching in the Sprite network file system. ACM
Transactions on Computer Systems, 6(1):134-154, February 1988.
57Mahadev Satyanarayanan. Scalable, secure, and highly available distributed file access. IEEE Computer, 23(5):921, May 1990.
58James J. Kistler and M. Satyanarayanan. Disconnected Operation in the Coda File System. ACM Transactions on
Computer Systems, 10(1):3-25, February 1992.
59Cary G. Gray and David R. Cheriton. Leases: An efficient fault-tolerant mechanism for distributed file cache
consistency. In Proceedings of the 12th ACM Symposium on Operating Systems Principles, pages 202-210,
December 1989.
60Mendel Rosenblum and John K. Ousterhout. The design and implementation of a log-structured file system.
ACM Transactions on Computer Systems, 10(1):26-52, February 1992.
61David A. Patterson, Garth Gibson, and Randy H. Katz. A Case for Redundant Arrays of Inexpensive Disks (RAID).
In Proceedings of the 1988 ACM SIGMOD Conference, pages 109-116, 1988.
62
File Service: A model. Distributed Systems: Concepts and Design, chapter 8.1-2,8.5-6[1]. (optional)
63
File Service: Case Studies. Distributed Systems: Concepts and Design, chapter 8.3-4[1].
Introduction
1. Eric A. Brewer. Lessons from Giant-Scale Services. IEEE Internet Computing, 5(4): pp.46-55
http://citeseer.ist.psu.edu/476298.html
Communication Models and Abstractions
2. A. D. Birrell and B. J. Nelson. Implementing remote procedure calls. ACM Transactions on Computer Systems 2(1):3959, February 1984
http://citeseer.ist.psu.edu/birrell84implementing.html
Naming in Distributed Systems
3. P.V. Mockapetris and K.J. Dunlap. Development of the Domain Name System. Proceedings of ACM SIGCOMM 1988
http://citeseer.ist.psu.edu/mockapetris88development.html
Concept of Time in Distributed Systems
4. Leslie Lamport. Time, Clocks, and the Ordering of Events in a Distributed System. Communications of the ACM,
21(7):558-565, July 1978
Performance and Scalability
5. Yasushi Saito, Brian Bershad, and Henry Levy. Manageability, Availability and Performance in Porcupine: A Highly
Scalable Cluster-Based Mail Service. Proc. of the 17th ACM Symp. on Operating Systems Principles, December 1999
http://citeseer.ist.psu.edu/saito99manageability.html
Availability and Correctness
6. D. B. Terry, et al. Managing Update Conflicts in Bayou, a Weakly Connected Replicated Storage System. Proceedings
of the Fifteenth ACM Symposium on Operating Systems Principles, 1995
http://citeseer.ist.psu.edu/terry95managing.html
7. John Ousterhout. The Role of Distributed State. CMU Computer Science: A 25th Anniversary Commemorative, ACM
Press Anthology Series, R. Rashid (Ed.), July 1991
http://citeseer.ist.psu.edu/ousterhout91role.html
Robustness
8. George Candea et al. Microreboot -- A Technique for Cheap Recovery. Proc. 6th Symposium on Operating Systems
Design and Implementation (OSDI), San Francisco, CA, December 2004
http://citeseer.ist.psu.edu/716820.html
Security
9. Stuart Staniford, Vern Paxson, and Nicholas Weaver. How to Own the Internet in Your Spare Time. Proceedings of the
2002 USENIX Security Symposium, San Francisco, CA, August 2002.
http://citeseer.ist.psu.edu/staniford02how.html
Engineering Systems
10. Butler W. Lampson. Hints for computer system design. Proceedings of the Ninth ACM Symposium on Operating
Systems Principles (SOSP).
http://citeseer.ist.psu.edu/lampson83hint.html
Download