Stanford Systems Quals 2002 (OS, NDS)

Summaries     OS Exams 92-02     NDS Exams 95-02     ChangeLog

Welcome! The reading lists for OS and NDS have been merged together since there is significant overlap and most people prepare for both. Papers for extra reading have been selected from various sources. Some are drawn from Dawson Engler's CS240 reading list. Others have been selected because they are quite referenced and appear relevant to me. The official reading list contains no paper after 1995. Ostensibly, that was the last year the list was updated. Please send me an email if you would like to contact me. Happy reading! — Gurmeet

Official Reading List     Extra Reading



Introductory Stuff


Distributed Systems: Concepts and Design
G Coulouris, J Dollimore, and T Kindberg, 3rd Ed, Addison Wesley, Aug 2001. Chapter 1: Characterization of Distributed Systems Chapter 2: System Models Chapter 6: Operating System Support
Modern Operating Systems
A Tenenbaum, 2nd Edition, Prentice Hall, Feb 2001. Chapter 1: Introduction
Efficient Reading of Papers in Science and Technology
Michael J Hanson, Brochure, Univ of Washington, 1989. Homepage
How (and How Not) to Write a Good Systems Paper
R Levin and D D Redell, ACM SIGOPS Operating Systems Review, Vol 17, No 3, July 1983, pp 35-40.


Memory Management


[Modern Operating Systems] Chapter 4: Memory Management
A Tenenbaum, 2nd Edition, Prentice Hall, Feb 2001.
Virtual Memory, Processes and Sharing in MULTICS
R C Daley and J B Dennis, Comm of the ACM, Vol 11, No 5, May 1968, pp 306-312.
The MULTICS Virtual Memory: Concepts and Design
A Bensoussan, C T Clingen and R C Daley, Comm of the ACM, Vol 15, No 5, May 1972, pp 308-318. Multics VM -- Tutorial and Reflections by Paul Green.
Working Sets, Past and Present
P J Denning, IEEE Transactions on Software Engineering, SE-6, 1, Jan 1980, pp 64-84. Earlier paper by Denning    VM History by Denning
WSCLOCK - A Simple and Effective Algorithm for Virtual Memory Management
R Carr and J Hennessy, Proc 8th SOSP, Dec 1981, pp 87-95.
Virtual Memory Management in the VAX/VMS Operating System
H M Levy and P H Lipman, Computer, Vol 15, No 3, March 1982, pp 35-41.
A New Page Table for 64-bit Address Spaces
M Talluri, M D Hill and Y A Khalidi, Proc 15th SOSP, Operating Systems Review, Vol 29, No 5, December 1995, pp 184-200. Talluri's thesis
Machine-Independent Virtual Memory Management for Paged Uniprocessor and Multiprocessor Architectures
R F Rashid et al, IEEE Transactions on Computers, Vol 37, No 8, August 1988, pp 896-908.
The Duality of Memory and Communication in the Implementation of a Multiprocessor Operating System
M Young et al, Proc 11th SOSP, November 1987, pp 63-76.
Virtual Memory Primitives for User Programs
A W Appel and K Li, Proc 4th ASPLOS, Vol 26, No 4, 1991, pp 96-107.
Application-Controlled Physical Memory using External Page-Cache Management
K Harty and D Cheriton, Proc 5th ASPLOS, October 1992, pp 187-199.
Architectural Support for Translation Table Management in Large Address Space Machines
J Huck and J Hays, , 1993, pp 39-50.
Virtual Memory for an Object-Oriented Language
T Kaehler, BYTE Magazine, Aug 1981, pp 378-387.


Distributed Shared Memory


[Distributed Systems] Chapter 16: Distributed Shared Memory
G Coulouris, J Dollimore, and T Kindberg, 3rd Ed, Addison Wesley, Aug 2001.
Memory Coherence in Shared Virtual Memory Systems
K Li and P Hudak, ACM Trans. Computer Systems Vol 7, No 4, Nov 1989, pp 321-359..
Implementation and Performance of Munin J Carter, J Bennett and W Zwaenepoel, Proceedings of the 13th SOSP, Oct 1991, pp 152-164. Munin Homepage Shared Memory Consistency Models: A Tutorial
S V Adve and K Gharachorloo, Digital Western Research Lab, Tech Report No 95/7, 1995, .
Treadmarks: Shared Memory Computing on Networks of Workstations
C Azma, A L Cox, S Dwarkadas, P Keleher, H Lu, R Rajamony, W Yu and W Zwaenepoel, IEEE Computer, Vol 29, No 2, Feb 1996, pp 18-28.


Synchronization


[Modern Operating Systems] Chapter 2: Processes and Threads
A Tenenbaum, 2nd Edition, Prentice Hall, Feb 2001.
Cooperating Sequential Processes
E Dijkstra, Programming Languages (Editor: Genuys), 1968, pp 43-112.
Monitors: An Operating System Structuring Concept
C A R Hoare, Communications of the ACM, Vol 17, No 10,, October 1974, pp 549-557.
Experience with Processes and Monitors in Mesa
B W Lampson and D D Redell, Communications of the ACM, Vol 23, No 2, February 1980, pp 105-117. Postscript version.
Threads and Input/Output in the Synthesis Kernel
H Massalin and C Pu, Proc 12th SOSP, December 1989, pp 191-200.
An Introduction to Programming with Threads
A Birrell, , 1989, .
Fast Mutual Exclusion for Uniprocessors
B N Bershad, D D Redell and J R Ellis, ASPLOS-V, Sep 1992, pp 223-233.
Practical Considerations for Non-Blocking Concurrent Objects
B N Bershad, Proc 13th Intl Conf on Distributed Computing Systems, May 1993, .
On the Duality of Operating System Structures
H C Lauer and R M Needham, Proc of 2nd SOSP, Operating Systems Review, Vol 13, No 2, April 1979, pp 3-19.


Process Scheduling and Migration


Trace-Driven Modeling and Analysis of CPU Scheduling in a Multiprogramming System
S W Sherman, F Baskett, and J C Browne, Communications of the ACM, Vol 15, No 12, December 1972, .
Transparent Process Migration: Design Alternatives and the Sprite Implementation
F Douglis and J K Ousterhout, Software Practice and Experience, Vol 21, No 8, August 1991, pp 757-785.
Scheduler Activations: Effective Kernel Support for the User-Level Management of Parallelism
T Anderson, B Bershad, E Lazowska, and H Levy, ACM Transactions on Computer Systems, Vol 10, No 1, February 1992, pp 53-79.
Lottery Scheduling: Flexible Proportional-Share Resource Management
C A Waldspurger and W E Weihl, OSDI 94, 1994, pp 1-11.


Deadlocks


[Modern Operating Systems] Chapter 3: Deadlocks
A Tenenbaum, 2nd Edition, Prentice Hall, Feb 2001.
System Deadlocks
E G Coffman Jr, M J Elphick, and A Shoshani, Computing Surveys, Vol 3, No 2, June 1971, pp 67-78.


Input/Output


[Modern Operating Systems] Chapter 5: Input/Output
A Tenenbaum, 2nd Edition, Prentice Hall, Feb 2001.
Input/Output Optimizations and Disk Architectures: A Survey
A J Smith, Performance Evaluation, Vol 1, 1981, pp 104-117.
An Introduction to Disk Drive Modeling
C Ruemmler and J Wilkes, IEEE Computer, Vol 27 No 3, 1994, pp 17-29.
RAID: High-Performance, Reliable Secondary Storage
P M Chen, E K Lee, G A Gibson, R H Katz and D A Patterson, ACM Computing Surveys, Vol 26, No 2, June 1994, pp 145-185.
The HP AutoRAID Hierarchical Storage System
J Wilkes, R Golding, C Staelin and T Sullivan, Proc 15th SOSP, 1995, pp 96-108.


File Systems


[Modern Operating Systems] Chapter 6: File Systems
A Tenenbaum, 2nd Edition, Prentice Hall, Feb 2001.
Multics Input/Output System
R J Feiertag and E I Organick, Proc of 3rd SOSP, 1971, pp 35-41.
A Fast File System For UNIX
M K McKusick, W N Joy, S J Leffler, and R S Fabry, ACM Transactions on Computer Systems, Vol 2, No 3, August 1984, pp 181-197. PDF
Vnodes: An Architecture for Multiple File System Types in Sun UNIX
S R Kleiman, Proceedings of the Summer Usenix Conference, Atlanta, GA, 1986, pp 238-247.
Reimplementing the Cedar File System Using Logging and Group Commit
R Hagmann, Proc of 11th SOSP, Operating System Review, Vol 21, No 5, November 1987, pp 115-162.
Evolving the Vnode Interface
D Rosenthal, Proceedings of the Summer Usenix Conference, Anaheim, CA, June 1990, pp 107-117.
The Design and Implementation of a Log-Structured File System
M Rosenblum and J K Ousterhout, ACM Transactions on Computer Systems, Vol 10, No 1, February 1992, pp 26-52.


Distributed File Systems


[Distributed Systems] Chapter 8: Distributed File Systems
G Coulouris, J Dollimore, and T Kindberg, 3rd Ed, Addison Wesley, Aug 2001.
Design and Implementation of the Sun Network Filesystem
R Sandberg et al., Proceedings of the Summer 1985 USENIX Conference, June 1985, .
File System Design for an NFS File Server Appliance
J Hitz, J Lau, and M Malcolm M, USENIX Winter Conference, San Francisco, CA, 1994, .
Leases: An Efficient Fault-Tolerant Mechanism for Distributed File Cache Consistency
C Gray and D Cheriton, Proc of 12th SOSP, December 1989, .
Replication in the Harp File System
B Liskov, et al., Proc of 13th SOSP, October 1991, .
Disconnected Operation in the Coda File System
J J Kistler and M Satyanarayanan, ACM Transactions on Computer Systems, Vol 10, No 1, February 1992, pp 3-25.
The Zebra Striped Network File System
J Hartman and J Ousterhout, , Proc of 14th SOSP, December 1993.
Serverless Network File Systems
T Anderson et al, Proc of 15th SOSP, December 1995, .


Clocks, Time and Events


[Distributed Systems] Chapter 10: Time and Global States
G Coulouris, J Dollimore, and T Kindberg, 3rd Ed, Addison Wesley, Aug 2001.
Time, Clocks, and Ordering of Events in a Distributed System
L Lamport, Comm. ACM, Vol 21, No 7, July 1978, pp 558-565.
Internet Time Synchronization: the Network Time Protocol
D L Mills, IEEE Transactions on Communications, vol. 39, no. 10, Oct. 1991, . NTP Homepage    List of Stratum 1 and Stratum 2 servers
Distributed Simulation and the Time Warp Operating System
D Jefferson et al, Eleventh SOSP, Operating Systems Review, 1987, Vol 21 No 5, pp 77-93. TimeWarp Homepage


Multiprocessor Systems


[Modern Operating Systems] Chapter 8: Multiple Processor Systems
A Tenenbaum, 2nd Edition, Prentice Hall, Feb 2001.
Simple But Effective Techniques for NUMA Memory Management
W Bolosky, R Fitzgerald, and M Scott, Proc of 12th SOSP, Operating Systems Review, Vol 23, No 5, December 1989, pp 19-31.
Operating System Support for Improving Data Locality on CC-NUMA Compute servers
B Verghese, S Devine, A Gupta, and M Rosenblum, Proc of the Seventh Intl Conf on Architectural Support for Programming Languages and Operating Systems, Cambridge, MA, 1996, .

Communication


[Distributed Systems] Chapter 4: Interprocess Communication
G Coulouris, J Dollimore, and T Kindberg, 3rd Ed, Addison Wesley, Aug 2001.
Implementing Remote Procedure Calls
A D Birrell and B J Nelson, ACM Transactions on Computer Systems, Vol 2, No 1, February 1984, pp 39-59.
Lightweight Remote Procedure Call
B N Bershad, T E Anderson, E D Lazowska and H M Levy, ACM Transactions on Computer Systems, Vol 8, No 1, February 1990, pp 37-55.


Distributed Objects


[Distributed Systems] Chapter 5: Distributed Objects and Remote Invocation
G Coulouris, J Dollimore, and T Kindberg, 3rd Ed, Addison Wesley, Aug 2001.
The Object Model: A Conceptual Tool for Structuring Software
A K Jones, In Operating Systems: An Advanced Course R. Bayer, et al. Ed., Springer-Verlag, 1979, pp 7-16.
Network Objects
A Birrell, G Nelson, S Owicki and E Wobber, Proceedings of the 14th SOSP, December 1993, . '95 version (DEC-SRC Report).
CORBA: Integrating Diverse Applications Within Distributed Heterogeneous Environments
Steve Vinoski, IEEE Communications Magazine, Vol. 14, No. 2, February, 1997, . Author's homepage,   Overview
[Distributed Systems] Chapter 17: CORBA Case Study
G Coulouris, J Dollimore, and T Kindberg, 3rd Ed, Addison Wesley, Aug 2001.


Protection and Security


A Hardware Architecture for Implementing Protection Rings
M D Schroeder and J H Saltzer, Communications of the ACM, Vol 15, No 3, March 1972, pp 157-170.
A Note on the Confinement Problem
B W Lampson, Communications of the ACM, Vol 16, No 10, October 1973, pp 613-615. Postscript version
The Protection of Information in Computer Systems
J H Saltzer, Proceedings of the IEEE, Vol 63, No 9, September 1975, pp 1278-1308. Webpage
Data Security
D E Denning and P J Denning, Computing Surveys, Vol 11, No 3, September 1979, pp 227-249.
Reflections on Trusting Trust
K Thompson, Communication of the ACM, Vol 27, No 8, August 1984, pp 761-763.
Efficient Software-Based Fault Isolation
R Wahbe, S Lucco, T E Anderson and S L Graham, ACM SIGOPS Operating Systems Review, Vol 27, No 5, Dec 1993, pp 203-216.
Why Cryptosystems Fail
R J Anderson, Communications of the ACM, Vol 37, No 11, November 1994, .


Authentication


[Modern Operating Systems] Chapter 9: Security
A Tenenbaum, 2nd Edition, Prentice Hall, Feb 2001.
[Distributed Systems] Chapter 7: Security
G Coulouris, J Dollimore, and T Kindberg, 3rd Ed, Addison Wesley, Aug 2001.
Using Encryption for Authentication in Large Networks of Computers
R M Needham and M D Schroeder, Communications of the ACM, Vol 21, No 12, December 1978, pp 993-999.
Kerberos: An Authentication Service for Open Network Systems
J G Steiner, C Neuman, and J I Schiller, USENIX Winter Conference Proceedings, February 1988, pp 191-202. Kerberos FAQ    Kerberos enacted in plain English
Limitations of the Kerberos Protocol
S M Bellovin and M Merritt, Computer Comm. Review, Vol 20, No 5, October 1990, .
The Evolution of the Kerberos Authentication Service
J Kohl, B C Neuman, and T Ts'o, EurOpen Conference Proceedings, Norway, May 1991, .
A Logic of Authentication
M Burrows, M Abadi, and R Needham, ACM Transactions on Computer Systems, Vol 8, No 1, February 1990, pp 18-36.
Authentication in Distributed Systems: Theory and Practice
B Lampson, M Abadi, M Burrows, and E Wobber, Proc of 13th SOSP, Operating Systems Review, Vol 25, No 5, October 1991, pp 165-182.
Password Security: A Case History
R Morris, and K Thompson, Communications of the ACM, Vol 22, No 11, November 1979, pp 594-597.


Name Services


[Distributed Systems] Chapter 9: Name Services
G Coulouris, J Dollimore, and T Kindberg, 3rd Ed, Addison Wesley, Aug 2001.
Designing a Global Name Service
B W Lampson, ACM Reprint No. 0-89791-198-9/86/0800-0001, September 1986, .
Development of the Domain Name System
P V Mockapetris and K J Dunlap, Proc SIGCOMM 88, Computer Communication Review, Vol 18, No 4, August 1988, pp 123-133.
Decentralizing a Global Naming Service for Improved Performance and Fault Tolerance
D Cheriton and T Mann, ACM Transactions on Computer Systems, Vol 7, No. 2, May 1989, pp 147-183.


Coordination and Agreement


[Distributed Systems] Chapter 11: Coordination and Agreement
G Coulouris, J Dollimore, and T Kindberg, 3rd Ed, Addison Wesley, Aug 2001.
Weighted Voting for Replicated Data
D Gifford, Proc of 7th SOSP, December 1979, .
Understanding the Limitations of Causally and Totally Ordered Communication
D Cheriton and D Skeen, Proce of 14th SOSP, December 1993, .


Transactions and Recovery


[Distributed Systems] Chapter 12: Transactions and Concurrency Control
G Coulouris, J Dollimore, and T Kindberg, 3rd Ed, Addison Wesley, Aug 2001.
[Distributed Systems] Chapter 13: Distributed Transactions
G Coulouris, J Dollimore, and T Kindberg, 3rd Ed, Addison Wesley, Aug 2001.
[Distributed Systems] Chapter 14: Replication
G Coulouris, J Dollimore, and T Kindberg, 3rd Ed, Addison Wesley, Aug 2001.
Recovery Techniques for Database Systems
J S M Verhofstad, Computing Surveys, Vol 10, No 2, June 1978, pp 167-195.
The Transaction Concept: Virtues and Limitations
J Gray, Proc. 7th International Conference on Very Large Data Bases, September 1981, pp 144-154.
Operating System Support for Database Management
M Stonebraker, Communications of the ACM, Vol 24, No 7, July 1981, pp 412-418.
Problems in Supporting Database Transactions in an Operating System Transaction Manager
M Stonebraker, D DuBourdieux, W Edwards,, Operating Systems Review, Vol 19, No 1, January 1985, pp 6-14.
Guardians and Actions: Linguistic Support for Robust, Distributed Programs
B Liskov and R Scheifler, ACM Trans. on Programming Languages and Systems Vol 5, No 3, July 1983, pp 381-404.
Analysis of Transaction Management Performance
D Duchamp, Proc of 12th SOSP, December 1989, .
Recovery Management in QuickSilver
R Haskin, Y Malachi, W Sawdon and G Chan, ACM Trans. on Computer Systems 6(1), February 1988, pp 82-108.
Lightweight Recoverble Virtual Memory
M Satyanarayanan, H H Mashburn, P Kumar, D C Steere and J J Kistler, ACM Trans. on Computer Systems 12(1), 1994, pp 33-57.
The Rio File Cache: Surviving Operating System Crashes
P M Chen, W T Ng, S Chandra, C Aycock, G Rajamani, and D Lowell, Proc of the 1996 Intl Conf on Architectural Support for Programming Languages and Operating Systems, October 1996, .


Fault Tolerance


Fault Tolerance Under UNIX
A Borg, W Blau, W Graetsch, F Herrmann, and W Oberle, ACM Transactions on Computer Systems, Vol 7, No 1, February 1989, pp 1-24.
A NonStop Kernel
J Bartlett, Proc of 8th SOSP, Operating Systems Review, Vol 11, No 5, November 1977, pp 23-31.
Hive: Fault Containment for Shared-Memory Multiprocessors.
J Chapin, M Rosenblum, S Devine, T Lahiri, D Teodosiu, and A Gupta, Proc of 15th SOSP, December 1995, .


Computer Networks


Congestion Avoidance and Control
V Jacobson, Proc ACM SIGCOMM, 1988, pp 314-329.
On the Self-Similar Nature of Ethernet Traffic
W E Leland, M S Taqqu, W Willinger and D V Wilson, Proc ACM SIGCOMM, 1993, pp 183-193.


Case Studies in Operating Systems


The Structure of the THE Multiprogramming System
E W Dijkstra, Communications of the ACM, Vol 11, No 5, May 1968, pp 341-346.
Multics - The First Seven Years
F J Corbato, J H Saltzer, and C T Clingen,, Proc. Spring Joint Computer Conference, AFIPS, May 1972, pp 571-583.
HYDRA: The Kernel of a Multiprocessor Operating System
W Wulf et al, Communications of the ACM, Vol 17, No 6, June 1974, pp 337-345.
VM/370: A study of Multiplicity and Usefulness
L H Seawright, and R A MacKinnon, IBM Systems Journal Vol 18, No 1, 1979, pp 4-17.
The Evolution of the MVS Operating System
M A Auslander, D C Larkin and A L Scherr,, IBM Journal of Research and Development, Vol 25, No 5, September 1981, pp 471-482. MVS Website.
[Modern Operating Systems] Chapter 10: UNIX and Linux
A Tenenbaum, 2nd Edition, Prentice Hall, Feb 2001.
The UNIX Time-Sharing System
D M Ritchie and K Thompson, The Bell System Technical Journal, Vol 57, No 6, July-August 1978, Part 2, pp 1905-1929.
UNIX Implementation
K Thompson, The Bell System Technical Journal, Vol 57, No 6, July-August 1978, Part 2, pp 1931-1946.
The Unix Time-Sharing System: The Unix Shell
S R Bourne, Bell System Technical Journal, Vol 57, No 6, July-August 1978, pp 1971-1990.
Pilot: An Operating System for a Personal Computer
D D Redell et al, Communications of the ACM, Vol 23, No 2, February 1980, pp 81-92.
Observations on the Development of an Operating System
H C Lauer, Proc of 8th SOSP, Operating Systems Review, Vol 15, No 5, December 1981, pp 30-36.
[Distributed Systems] Chapter 18: Mach Case Study
G Coulouris, J Dollimore, and T Kindberg, 3rd Ed, Addison Wesley, Aug 2001.
[Modern Operating Systems] Chapter 11: Windows 2000
A Tenenbaum, 2nd Edition, Prentice Hall, Feb 2001.


OS Structure


Survey of Virtual Machine Research
R P Goldberg, Computer, Vol 7, No 6, June 1974, pp 34-45.
Extensibility: Safety and Performance in the SPIN Operating System
B N Bershad, S Savage, P Pardyak, E G Sirer, M Fiuczunski, D Becker, C Chambers, and S Eggers, Proc of 15th SOSP, December 1995, pp 267-284. SPIN Website
Exokernel: An Operating System Architecture For Application-specific Resource Management D R Engler, M F Kaashoek, and J O'Toole Jr, Proc of 15th SOSP, December 1995, pp 251-266. Exokernel Webpage A Caching Model of Operating System Kernel Functionality
D Cheriton and K Duda, Proc of First OSDI, November 1994, pp 179-193.
On micro-kernel construction
J Liedtke, Proc of 15th SOSP, December 1995, .


Case Studies in Distributed Systems


The LOCUS Distributed Operating System
B Walker, et al, Proc of 9th SOSP, October 1983, .
Grapevine: An Exercise in Distributed Computing
A D Birrell, R Levin, R M Needham and M D Shroeder, CACM, Vol 25, No 4, April 1982, pp 260-274.
Experience with Grapevine: The Growth of a Distributed System
M Schroeder, A Birrell, and R Needham, ACM Transactions on Computer Systems, Vol 2, No 1, February 1984, pp 3-23.
VAXclusters: A Closely-Coupled Distributed System
N P Kronenberg, H M Levy, and W D Strecker, ACM Transactions on Computer Systems, Vol 4, No 2, May 1986, pp 130-146.
The V Distributed System
D Cheriton, Communications of the ACM, March 1988, .
The Sprite Network Operating System
J Ousterhout et al, IEEE Computer, February 1988, .
Amoeba: A Distributed Operating System for the 1990s
S J Mullender, G van Rossum, A S Tanenbaum, R van Renesse, and H van Staveren, Computer, Vol 23, No 5, May 1990, pp 44-53.
The Information Bus - An Architecture for Extensible Distributed Systems
B Oki et al, Proc of 14th SOSP, December 1993, .
Plan 9 from Bell Labs
R Pike et al, Computing Systems, Vol 8, No 3, Summer 1995, pp 221-254.
Plan 9 website


Multimedia Systems


[Modern Operating Systems] Chapter 7: Multimedia Operating Systems
A Tenenbaum, 2nd Edition, Prentice Hall, Feb 2001.
[Distributed Systems] Chapter 15: Distributed Multimedia Systems
G Coulouris, J Dollimore, and T Kindberg, 3rd Ed, Addison Wesley, Aug 2001.


Words of Wisdom


[Modern Operating Systems] Chapter 12: Operating System Design
A Tenenbaum, 2nd Edition, Prentice Hall, Feb 2001.
The Emperor's Old Clothes
C A R Hoare, Communications of the ACM, Vol 24, No 2, February 1981, pp 75-83.
Hints for Computer System Design
B W Lampson, Proc 9th SOSP, October 1983, pp 33-48. Postscript version.
End-to-End Arguments in System Design
J H Saltzer, D P Reed and D D Clark, ACM Transactions on Computer Systems, Vol 2, No 4, Nov 1984, pp 277-288.


Miscellaneous


The Impact of Architectural Trends on Operating System Performance
M Rosenblum, E Bugnion, S A Herrod, E Witchel and A Gupta, Proc 15th SOSP, Dec 1995, pp 285-298.
The Dawn of the Stupid Network
David S Isenberg, ACM Networker 2.1, Feb/Mar 1998, pp 24-31. Cached copy


Textbooks


Computer Networks
A S Tenenbaum, 3rd Edition, Prentice Hall, 813 pages, Jan 1996.
Communication Networks: A First Course
J Walrand, 2nd Edition, 1991.
Distributed Systems: Concepts and Design
G Coulouris, J Dollimore, T Kindberg, 3rd Edition, Addison-Wesley, 672 pages, Aug 2000. Website
Distributed Systems
S Mullender, 2rd Edition, Addison-Wesley, 595 pages, July 1993.


Useful Online Stuff


Lecture Notes for Introduction to Operating Systems
Marvin Solomon, Univ of Washington at Madison, 2000.
Lecture Notes for Introduction to Operating Systems
Margo Seltzer, Harvard University, 2000.
Readings in Computer Architecture
M D Hill, N P Jouppi, G S Sohi, 2000. For the latest and greatest in Architecture.
Advice on Research and Writing
M Leone Pointers to interesting articles.

ACM Copyright Notice


Last Update: 2 Aug 2002 by Gurmeet Singh Manku