CS 491 High Performance Distributed Objects (Reading List)

Tentative Schedule and Reading List, Fall 1997

Note that all of the participants in the seminar are expected to have read the core materials (approximately 3 papers per week), and to come to the seminar with insightful comments and perspective. Additional materials are cited for deeper inquiries.

All presenters must meet with Andrew Chien the preceding friday with a completely prepared presentation for discussion and improvement. This will enable us to have the highest possible quality discussions.

I. Introduction to RPC (9/17)

  1. Birrell and Nelson, "Implementing Remote Procedure Calls", ACM Transactions on Computer Systems, Vol. 2, No. 1, pp. 39-59, February, 1984. (Oolan Zimmer) Slides (PS, 144k)
  2. The "Xerox Courier RPC Spec" was going to be presented, but it was not available in time for the seminar.
  3. RPC: Remote Procedure Call Protocol Specification Version 2 (remote original) (Andy Lavery) Slides (HTML) , Slides (Power Point, 220K)
  4. XDR: External Data Representation Standard (remote original) (Andy Lavery) Slides are in SunRPC presentation above.

    Additional Materials:

II. RPC Performance (9/24)
  1. Bershad, et. al., "A Remote Procedure Call Facility for Interconnecting Heterogeneous Computer Systems", IEEE Transactions on Software Engineering, Vol. SE-13, No. 8, pp. 880-894, August 1987. (Aaron Coday) ( HTML slides, PPT slides, 94k)
  2. Chung, Lazowska, Notkin, and Zahorjan, "Performance Implications of Design Alternatives for Remote Procedure Call Stubs", IEEE Conference on Distributed Computing Systems, pp. 36-41, 1989. (Aaron Coday) (slides are above)
  3. Schroeder and Burrows, "Performance of Firefly RPC", ACM Symposium on Operating System Principles, Vol. 23, No. 5, , pp. 83-90, December 1989. (Geetanjali Sampemane) (Slides (HTML), (ppt))

    Additional Materials:

III. Naming (10/1) (Lynn Zhang and Ed Peters)
  1. Needham, "Names", Chapter 12 of Distributed Systems, Addison-Wesley, 315-327.
  2. Birrell, Levin, Needham, and Schroeder, "Grapevine: An Exercise in Distributed Computing", Communications of the ACM, Vol. 25, No. 4, pp. 260-274, April 1982.
  3. Lampson, "Designing a Global Name Service", ACM Symposium on Principles of Distributed Computing, pp. 1-10, 1986. Slides (PS, 140k)

    Additional Materials:

IV. CORBA (10/8) (Luis Rivera and Sudha Krishnamurthy)
  1. Specification

  2. Implementation and Performance

    Additional References:

    (All of the implementation/performance papers are also available from Doug Schmidt's CORBA research page.)
V. Component Object Model (COM) and Microsoft Transaction Server (MTS) (10/15) (Patrick Flanagan) VI. Java Distributed Object Systems (Java Spaces, Java RMI, Java Beans) (10/22) (Peng Wu, Andrew Chien)
  1. Peng Wu's presentation (95 ppt, 240k)
  2. Andrew Chien's Java presentation (Powerpoint 97)
  3. Andrew Chien's Project Motivation (Powerpoint 97)
  4. Andrew Chien's Project slides (Powerpoint 97)
  5. Java RMI
  6. Java Beans
  7. Java Spaces
  8. Additional Readings

VII. Alternative Models for Distributed Computing (10/29) (Andrew Chien)
  1. Spector, "Performing Remote Operations Efficiently on a Local Computer Network", Communications of the ACM, Vol. 25, No. 4, pp. 246-260, April 1982.
  2. Wallach, Engler, and Kaashoek, ASHs: Application-specific handlers for high-performance messaging SIGCOMM, pp. 40-52, 1996.
  3. Karamcheti, Plevyak & Chien, Runtime Mechanisms for Efficient Dynamic Multithreading Journal of Parallel and Distributed Computing, Vol. 37, pp. 21-40, 1996.
  4. Bershad, et. al., "Lightweight Remote Procedure Call". ACM Symposium on Operating System Principles, Vol. 23, No. 5, , pp. 102-113, December 1989.
VIII. Project Meetings (10/29+)

If you'd like to contribute suggestions for selected papers, or have further questions about the seminar's content, contact Andrew Chien.

Back to CSAG home page


achien@cs.uiuc.edu