hong's website
Distributed Operating Systems: Reading list
Last modified on April 2007 by Hong Ong
Review of Operating Systems
- Gray, J., Notes on data base operating systems, Operating Systems: An Advanced Course, Lecture Notes in Computer Science #60, Springer-Verlag, 1978. GrayLect.pdf
- Quarterman, J.S, Silberschatz, A., and Peterson, J.L., 4.2BSD and 4.3BSD as examples of the UNIX system, Computing Surveys 17(4):419 - 470, ACM, December 1985. BSDUNIX.pdf
Time
- Fidge, C., Logical time in distributed computing systems, Distributed Computing, 24(8):28-33, August 1991. timesurvey.pdf
- Lamport, L., Time, clocks and the ordering of events in a distributed system. CACM 21(7):558-565, ACM, July 1978. lamport.pdf
- Mills, D.L. Internet time synchronization: the Network Time Protocol. Trans. Communications, 39(10):1482-1493, IEEE, October 1991. ntp1.pdf
- Mills, D.L. Network Time Protocol (Version 3) specification, implementation and analysis. Network Working Group Report RFC-1305, University of Delaware, March 1992, 113 pp. ntp3.pdf
- Raynal, M., Singhal, M., Logical time: capturing causality in distributed systems, Computer 29(2):49-56, IEEE, February 1996. timecause.pdf
Interprocess Communication (IPC)
- Birrell, A.D., Nelson, B.J., Implementing Remote Procedure Calls, Transactions on Computer Systems 7(1):1-24, ACM, February 1989. rpc.pdf
- Waldo, J., Wollrath, A., and Wyant, G., Simple Activation for Distributed Objects, SMLI TR-95-46, Sun Microsystems Laboratories, November 1995. distobj.pdf
Transactions and Concurrency Control
- Bernstein, P.A. and Goodman, N., Concurrency Control in Distributed Database Systems, Comp. Surveys 13(2):185-221, ACM, June 1981. concsum.pdf
- Moss, E.B., An Introduction to Nested Transactions, COINS TR 86-41, University of Mass, Department of Computer and Information Science, September 1986. nesttran.pdf
- Traiger, I.L., Gray, J., et al, Transactions and Consistency in Distributed Database Systems, Trans. Database Sys., 7(3):323-342, ACM, September 1982. disttrans.pdf
Resource Scheduling (a kin of transaction scheduling)
- Boloskym W., et al, Distributed Schedule Management in the Tiger Video Fileserver, Proc. 16th SOSP, ACM, October 1997. tigersched.pdf
Mutual Exclusion, Including Voting
- Li, K. and Hudak, P., Memory coherency in shared virtual memory systems, Trans. Computer Systems 7(4):321-359, ACM, November 1989. pathcomp.pdf
- Maekawa, M., A sqrt(n) algorithm for mutual exclusion in decentralized systems, Trans. Computer Systems 3(2):145-159, ACM, May 1985. votedist.pdf
- Raymond, K., A tree-based algorithm for distributed mutual exclusion, Trans. Computer Systems 7(1):61-77, ACM, February 1989. treemutex.pdf
- Ricart, G. and Agrawala, A.K., An optimal algorithm for mutual exclusion in computer networks, Comm. 24(1):9-17, ACM, January 1981. timemutex.pdf
Coordinator Election
- Garcia-Molina, H., Elections in a distributed computer system, Trans. Computers C-31(2):48-59, IEEE, 1982. garcia.pdf
- Thomas, R.H., A majority concensus approach to concurrency control for multiple copy databases, Trans. Computer Systems, 4(2):180-209, ACM, June 1979. voting.pdf
Consensus
- Lamport, L., Shostak, R., and Pease, M., The Byzantine Generals Problem, Trans. Prog. Lang. and Sys. 4(3):382-401, ACM, July 1982. generals.pdf
Deadlock
- Chandy, M., et al, Distributed Deadlock Detection, Trans. Comp Systems 1(2):144-156, ACM, May 1983. chandydeadlock.pdf
- Knapp, Edgar, Deadlock Detection in Distributed Systems, Computing Surveys, 19(4):303-328, ACM, December 1987. knappdeadsurvey.pdf
- Singhal, Deadlock Detection in Distributed Systems, Computer, 22(11):37-48, IEEE, November 1989. singhaldeadsurvey.pdf
Processor Allocation and Migration
- Douglis, F. and Ousterhout, J.K., Transparent Process Migration: Design Alternatives and the Sprite Implementation, Software Practice and Experience, 21(8):757-785, Wiley, August 1991. migration.pdf
- Ferguson, D., et al, Microeconomic algorithms for load balancing in distriuted computer systems, Proc. 8th Int'l Conf. Distributed Computing Systems, 491-499, IEEE, 1988. microecon.pdf
- Litzkow, M.J., et al, Condor-a hunter of idle workstations, Proc. 8th Int'l Conf. Distributed Computing Systems, 104-111, IEEE, 1988. condor.pdf
- Theimer, M.M. and Lantz, K.A., Finding idle machines in a workstation-based distributed system, Proc. 8th Int'l Conf. Distributed Computing Systems, 112-122, IEEE, 1988. findingidle.pdf
- Zayas, E.R., Attacking The Process Migration Bottleneck, Proc. of SOSP 11:13-24, ACM, 1987. migbottle.pdf
Replicated Data Management
- Abbadi, E.L. and Toueg, S., Maintaining Availability in Partitioned Replicated Databases, Trans. Database Systems 14(2):264-290, ACM, June 1989. viewquorums.pdf
- Davidson, S.B., Garcia-Molina, H., Skeen, D., Consistency in Partitioned Networks, Computing Surveys 17(3):341-370, ACM, September 1985. conspart.pdf
- Gifford, David K., Weighted Voting for Replicated Data, Proc. of SOSP 7:150-162, ACM, 1979. weighted.pdf
- Herlihy, M., Dynamic quorum adjustments for partitioned data, Trans. on Database Systems 12(2):170-194, ACM, June 1987. dynamicquorum.pdf
- Parker, D.S., et al, Detection of mutual inconsistency in distributed systems, Trans. Software Engineering 9(3):240-246, IEEE, 1983. parker.pdf
- Van Renesse, R. and Tannenbaum, A.S., Voting With Ghosts, Proc. 8th Int'l Conf. Distributed Computer Systems, IEEE, 1988. ghosts.pdf
Checkpointing, Logging, and Recovery
- Bhargava, B. and Lian, S., Independent checkpointing and concurrent rollback for recovery in distributed systems -- an optimistic approach, Proc. 7th Symp. Reliability in Dist. Sys., IEEE, 3-12, 1988. checkopt.pdf
- Borg, A., Baumbach, J., and Glazer, S., A message system supporting fault tolerance, SOSP, 90-99, ACM, 1983. checkrecovnew.pdf
- Koo, R. and Toueg, S., Checkpointing and rollback-recovery for distributed systems, Trans. Software Engineering, SE-13(1):23-31, IEEE, 1987. koo.pdf
- Leu, P. and Bhargava, B., A model for concurrent checkpointing and recovery using transactions, Proc. 9th Intl. Conf. Distr. Comp. Sys, 423-430, IEEE, 1989. checkrecovnew.pdf
- Strom, R.E. and Yemini, S., Optimisitic recover in distributed systems, Trans. Computer Systems, 3(3):204-226, ACM, August 1985. logcheck.pdf
- Johnson, D.B and Zwaenepoel, Sender-based message logging, Symp. Fault Tolerant Computing, 14-19, IEEE, 1987. senderlog.pdf
Distributed Shared Memory (DSM)
- Bolosky, W., Fitzgerald, R., and Scott, M, Simple But Effective Techniques for NUMA Memory Management, Proceedings of the 12th SOSP, Operating Systems Review, 23(5):19-31, ACM, December 1989. numa.pdf
- Carriero, N., and Gelemter, D., Linda in context, CACM 32(4):444-458, ACM, April 1989. linda.pdf
- Nitzberg, B. and Lo, V., Distributed shared memory: a survey of issues and algorithms, Computer, 24(8):52-60, IEEE, August 1991. dsmsurvey.pdf
- Stumm, M., Zhou, S., Algorithms implementing distributed shared memory, Computer 23(5):54-64, IEEE, May 1990. dsmalgs.pdf
Distributed File Systems (DFS)
- Boloskym W., et al, The Tiger video file server, 6th NOSSDAV, MSR-TR-96-09, Microsoft, April 1996. tiger.pdf
- Sandberg, R, et al, Design and Implementation of the Sun Network File System, Summer USENIX Conference Proceedings, USENIX, 1985. nfs.pdf
- Satyanarayanan, M., A Survey of Distributed File Systems, Annual Review of Computer Science, Annual Reviews, 1989-1990, 73-104. survey.pdf
- Satyanarayanan, M., et al, Coda: a highly available file system for a distributed workstation environment, Trans. Computers 39(4):447-459, IEEE, April 1990. coda.pdf
Directory and Discovery Services
- Mockapetris, P.V. and Dunlap, K.J., Development of the Domain Name System, Proc. SIGCOMM '88 Symp., 123-133, ACM, August 1988. dns.pdf
- Herlihy, M. and Warres, Michael P, A Tale of Two Directories: Implementing Distributed Shared Objects in Java, JAVA '99, 99-108, ACM, June 1999. javadirs.pdf
- Yeong, W., et al, RFC 1487: X.500 Lightweight Directory Access Protocol, Network Working Group, July 1993. rfc1487.html
- Wahl, M.Howes, T., and Kille, S., RFC 2251: Lightweight Directory Access Protocol (v3), Network Working Group, December 1997. html rfc2251.html
Security, Protection, and Authentication
- Anderson, R.J., Why Cryptosystems Fail, CACM, 37(11), ACM, November 1994. ryptfail.pdf
- Lampson, B., et al, Authentication in Distributed Systems: Theory and Practice, Proc. 13th SOSP, ACM, October 1991. auth.pdf
- Needham, R.N., Schroeder, M.D., Using Encryption for Authentication in Large Networks of Computers, CACM 21(12):993-999, Decmeber 1978. needham.pdf
- Steiner, J.G., Neuman, C., and Schiller, J.I., Kerberos: An Authentication Service for Open Network Systems, USENIX Winter Conference Proceedings, 191-202, USENIX, February 1988. kerberos.pdf
Systems
- Borg, A., Blau, W., and Graetsch, W., Fault Tolerance Under UNIX, Trans. Computer Systems 7(1):1-24, ACM, February 1989. faults.pdf
- Cheriton, D., The V Distributed System, CACM 31(3):314-333, ACM, March 1988. vsystem.pdf
- Mullender, S.J., et al, Amoeba: a distributed operating system for the 1990s, Computer 23(5):44-53, IEEE, May 1990. amoeba.pdf
- Pike, R., et al., Plan 9 from Bell Labs, Computing Systems 8(3):221-254, USENIX, Summer 1995. plan9.pdf
- Saltzer, J.H., Reed, D.P., Clark, D.D, End-to-End Arguments in System Design, Transactions on Computer Systems 2(4):277-288, ACM, November 1984. endtoend.pdf
- Walker, B., et al, The LOCUS Distributed Operating System, Proc. 9th SOSP, 46-69, October 1983. locus.pdf
Disclaimer
This document is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. Use at your own risk.