Main navigation | Main content
Additional Reading and Resources
This page contains additional
reading material as well as other resources such as online tutorials.
The relevant material for each lecture will be indicated on the
Schedule page, and you are highly encouraged to read these materials
in addition to your textbook reading. More emphasis has been put on
providing material for those topics that are not covered in the
textbook comprehensively (Also Note: Some old papers are not
available online, but references have been provided so that you can
look for physical copies, e.g., in the library).
[Com1] RPC Tutorial
[Com2] Introduction to ONC RPC
[Com3] Java RMI documentation
[Com4] ONC+ Developer's Guide - SUN Microsystems
[Com5] RPC Tutorial Slides
[Com6] RPC Tutorial Sample Code
[Com7] Beej's Guide to Network Programming (C/C++)
[Com8] Java Socket Programming Examples
[Com9] Thrift Tutorial
[Com10] UDP Example (C/C++)
[Com11] UDP Example (JAVA)
[Com12] Thrift Presentation
[Nam1] Ion Stoica, Robert Morris, David Karger, M. Frans Kaashoek, and Hari Balakrishnan, "Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications", ACM SIGCOMM 2001, San Deigo, CA, August 2001, pp. 149-160.
[Nam2] Miguel Castro, Peter Druschel, Y C Hu, A Rowstron, "Topology-aware routing in structured peer-to-peer overlay networks", Technical Report MSR-TR-2002-82, 2002.
Clock Synchronization and Event Ordering
[Syn1] Mills, D., "Improved Algorithms for Synchronizing Computer Network Clocks", IEEE/ACM Transactions on NetworkingIEEE Communications Society, 1994.
[Syn2] Leslie Lamport, "Time, Clocks and the Ordering of Events in a Distributed System", Communications of the ACM 21, 7 (July 1978), 558-565.
[DR1] David Mosberger, "Memory consistency models", ACM SIGOPS Operating Systems Review, Volume 27, Issue 1, January 1993.
[DR2] V. Duvvuri, P. Shenoy and R. Tewari, "Adaptive Leases: A Strong Consistency Mechanism for the World Wide Web", IEEE Transactions on Knowledge and Data Engineering (TKDE), 5(5), pages 1266-1276, September 2003.
[DR3] GIFFORD,D. K. Weighted voting for replicated data. In Proceedings of the 7th Symposium on Operating Systems Principles (Asilomar, Calif., Dec. 1979), ACM, New York, 1979,150-159.
[DC1] J. K. Ousterhout, "Scheduling techniques for concurrent systems". 3rd Intl. Conf. on Distributed Computing Systems, Oct. 1982.
[DC2] D. L. Eager, E. D. Lazowska, and J. Zahorjan. "Adaptive load sharing in homogeneous distributed systems". IEEE Transactions on Software Engineering, 12(5), 1986.
[DC3] M. Litzkov, M. Livny and M. Mukta, "Condor: A Hunter of Idle Workstations", Proc of IEEE ICDCS 1988.
[DC4] D.P. Anderson, "BOINC: A System for Public-Resource Computing and Storage", Proceedings of the 5th ACM/IEEE International Workshop on Grid Computing, 2004.
[DC5] Jeffrey Dean and Sanjay Ghemawat, "MapReduce: Simplified Data Processing on Large Clusters ", Proceedings of OSDI, 2004.
[FT1] Leslie Lamport, Marshall Pease, Robert Shostak, "The Byzantine Generals Problem", ACM Transactions on Programming Languages and Systems 4, 3 (July 1982), 382-401.
[FT2] E. A. Akkoyunlu, K. Ekanadham, and R. V. Huber, "Some constraints and tradeoffs in the design of network communications", ACM SIGOPS Operating Systems Review, Volume 9, Issue 5 (November 1975), 67 - 74. (See Appendix for Two-Army Problem).
[FT3] K. Birman and T. Joseph, "Exploiting virtual synchrony in distributed systems", Proc. of SOSP '87.
[DFS1] P. Braam, "The Coda Distributed File System", Linux Journal, #50, June 1998.
[DFS2] Sanjay Ghemawat, Howard Gobioff, and Shun-Tak Leung, "The Google File System", Proceedings of SOSP 2003.
[DFS3] A. Rowstrom and P. Druschel, "Storage management and caching in PAST, a large-scale, persistent peer-topeer storage utility", In Proc. of ACM SOSP, 2001.
[MSC1] D. Le Gall, "MPEG: A Video Compression Standard for Multimedia Applications", Communications of the ACM, Vol. 34, No. 4, Pages 46-58, April 1991.
[MSS1] C. L. Liu and J. Layland, "Scheduling algorithms for multiprogramming in a hard real-time environment", Journal of the ACM, 10(1), 1973.
[MSS2] P. Goyal, X. Guo, and H. M. Vin. "A hierarchical cpu scheduler for multimedia operating systems", In Proc. of the 2nd OSDI Symposium, October 1996.
[MSS3] C. Waldspurger, W. Weihl, "Lottery Scheduling: Flexible Proportional-Share Resource Management", In Proc. of OSDI'94.
[MFS1] P. Shenoy and H. M. Vin, " Cello: A Disk Scheduling Framework for Next Generation Operating Systems", Proceedings of ACM SIGMETRICS Conference, pages 44-55, June 1998.
[MS1] A. Dan, D. Sitaram, "Buffer Management Policies for an On-Demand Video Server", IBM Research Report RC 19347, 1993.
[MS2] K. Hua, Y. Cai and S. Sheu, "Patching: A Multicast Technique for True On-Demand Services", ACM Multimedia, 1998.
[VM1] G. Popek and R. Goldberg, "Formal requirements for virtualizable third generation architectures", Communications of the ACM, Vol. 17, No. 7, pp 412-421, July 1974.
[VM2] M. Rosenblum and T. Garfinkel, "Virtual Machine Monitors: Current Technology and Future Trends", IEEE Computer, Vol. 38, No. 5, pp 39-47, May 2005.
[VM3] M. Ambrust et al. "Above the Clouds: A Berkeley View of Cloud Computing", UC Berkeley Tech. Report., 2009.