Home
 Basic Info
 Lecture Notes
 Syllabus
 Project Ideas

We will read and discuss 2-4 papers per week.  Many of the papers for the class will be available either on-line, or as handouts in a previous class.

Last Year's Syllabus
Date Readings

 Part 1: Classics

Tu 8/29 The UNIX Time-Sharing System
Dennis M. Richie and Ken Thompson
annotated version
Th 8/31 Entrance Exam
Tu 9/5 A History and Evaluation of System R
Donald D. Chamberlin, Morton A. Astrahan, Michael W. Blasgen, James N. Gray, W. Frank King, Bruce G. Lindsay, Raymond Lorie, James W. Mehl, Thomas G. Price, Franco Putzolu, Patricia Griffiths Selinger, Mario Schkolnick, Donald R. Slutz, Irving L. Traiger, Bradford W. Wade and Robert A. Yost
annotated version

Anatomy of a Database System, Sections 1-3 Hellerstein & Stonebraker (in textbook). No summary required

Optional Reading: The Design and Implementation of Ingres
Michael Stonebraker, Eugene Wong, Peter Kreps and Gerald Held.

Part 2: Persistent Storage

Th 9/7
A Fast File System for UNIX
McKusick, Joy, Leffler and Fabry
Journaling Versus Soft Updates; Asynchronous Meta-Data Protection in Filesystems. Seltzer, Ganger, McKusick, Smith, Soules, and Stein.
Tu 9/12 ARIES: A Transaction Recovery Method Supporting Fine-Granularity Locking and Partial Rollbacks Using Write-ahead Logging, 2-up version
C. Mohan et al. (in Red Book)
Th 9/14
An aside: Berkeley Systems Sampler
Implementing Declarative Overlays.
Loo et al.
Thirty Years is Long Enough.
Brewer et al.
Tu 9/19 The HP AutoRAID Hierarchical Storage System [Temporary local copy, 2-up version]
Wilkes, Golding, Staelin and Sullivan 
Th 9/21 Data Management in Application Servers. Dean Jacobs (in Red Book).

Part 3: Scheduling for Consistency

Tu 9/26 Experience with Processes and Monitors in Mesa
Butler Lampson and David Redell
Tu 9/28 On Optimistic Methods for Concurrency Control
Kung and Robinson
Concurrency Control Performance Modeling: Alternatives and Implications
Agrawal et al. Agrawal/Carey/Livny
Tu 10/3 Granularity of Locks and Degrees of Consistency in a Shared Database
Gray et al.
Generalized Isolation Levels
Adya, Liskov, O'Neil.

Part 4: Volatile Memory and Virtualization

Th 10/5 no class
Tu 10/10 Machine-Independent Virtual Memory Management for Paged Uniprocessor and Multiprocessor Architectures
Rashid, Tavanian, Young, Golub, Baron, Black, Bolosky and Chew
Don't worry about the details of the calls.

Optional reading: Virtual Memory Primitives for User Programs
Appel and Li
This paper looks at things you can build on top of the VM system (besides a larger perceived physical memory).
Th 10/12 Koushik Sen on Concolic Testing
Tu 10/17 Lightweight Recoverable Virtual Memory
M. Satyanarayanan, Henry H. Mashburn, Puneet Kumar, David C. Steere, and James J. Kistler
Th 10/19 2Q: A Low Overhead High Performance Buffer Management Replacement Algorithm
T. Johnson and D. Shasha
Application-Controlled Physical Memory using External Page-Cache Management
Harty and Cheriton

Part 6: Dataflow and Query Processing

Tu 10/24 Parallel Database Systems: The Future of High Performance Databae Systems
DeWitt and Gray
Encapsulation of Parallelism in the Volcano Query Processing System
Goetz Graefe
Th 10/26 MapReduce: Simplified Data Processing on Large Clusters
Dean and Ghemawat
Highly Available, Fault-Tolerant, Parallel Dataflows
Shah, Hellerstein, Brewer
Optional Reading: Flux: An Adaptive Partitioning Operator for Continuous Query Systems
Shah, Hellerstein, Chandrasekaran, Franklin
Tu 10/31 The Click Modular Router
Kohler, Morris, Chen, Jannotti and Kaashoek
Th 11/2 Access Path Selection in a Relational Database Management System [all new version!] [in Red Book]
Selinger, Astrahan, Chamberlain, Lorie & Price
The Volcano Optimizer Generator: Extensibility and Efficient Search Graefe and McKenna.
Optional reading: Grammar-like Functional Rules for Representing Query Optimization Alternatives. G. Lohman [in Red Book]
Tu 11/7 Eddies: Continuously Adaptive Query Processing
Hellerstein and Avnur
Optional Reading: Lifting the Burden of History from Adaptive Query Processing
Deshpande and Hellerstein

Part 5: Threads and Scheduling

Th 11/9 Lottery Scheduling: Flexible Proportional-Share Resource Management
Waldspurger and Wiehl
Tu 11/14 SEDA: An Architecture for Well-Conditioned, Scalable Internet Services
M. Welsh, D. Culler, and E. Brewer
Capriccio: Scalable Threads for Internet Services
R. von Behren, J. Condit, F. Zhou, G. C. Necula, and E. Brewer

Part 7: Network Support

Th 11/16 Congestion Avoidance and Control
Van Jacobson
TCP Congestion Control with a Misbehaving Receiver
Savage, Cardwell, Wetherall and T. Anderson
Tu 11/21 Architectural Considerations for a New Generation of Protocols
TinyOS

Part 8: TBD

Th 11/23 Thanksgiving Holiday
Tu 11/28Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications
Stoia, Morris, Karger, Kaashoek, Balakrishnan
The Impact of DHT Routing Geometry on Resilience and Proximity
Gummadi, Gummadi, Gribble, Ratnasamy, Shenker, Stoica
Th 11/30 Disco: Running Commodity Operating Systems on Scalable Multiprocessors
Bugnion, Devine, Govil and Rosenblum
Xen and the Art of Virtualization
Barham, et al.
Tu 12/5 Deconstructing Process Isolation
M. Aiken, et al.
Broad New OS Research: Challenges and Opportunities
Hunt, et al.
Th 12/7