Schedule for Witchel's Fall 2005 CS380L: Advanced Operating Systems (Syllabus, Project, Presentations, Reviews)

Wk Date Discussion Topic Homework/
Extra Reading
1 8/31 Mike Dahlin guest lecture.
Review syllabus and HW1. notes
How (and How Not) to Write a Good Systems Paper (Levin and Redell 1983)
2 9/5
No meeting: Labor Day.
Medical Devices: The Therac-25 (Levinson 1993)
The Task of the Referee
See Dahlin's Advice
9/7 Historical perspective & OS Design
1) The UNIX Timesharing System (Ritchie and Thompson 1974)    notes 2up
2) The Rise of "Worse is Better" (Richard Gabriel)
HW1 in-class quiz
Historical perspective & OS Design
THE (Dijkstra 1968)   notes
3 9/12 Virtual Memory & Virtual Machines
Disco: Running Commodity Operating Systems on Scalable Multiprocessors (Bugnion et al, 1997)  notes 2up
Project: Topic selection (9/12)
Historical perspective
Protection and the Control of Information Sharing in Multics (Saltzer 1974)
Multics (Daley and Dennis)  notes
9/14 Virtual Memory & Virtual Machines
Memory Resource Management in VMware ESX Server (Waldspurger 2002) notes 2up
List of 6 papers you can present due Friday 9/16.  Email list to Witchel.
4 9/19 OS Design  
1) Exokernel: An Operating System Architecture for Appliation-Level Resource Management (Engler et al, 1995) notes 2up
2) End-to-end Arguments in System Design (Saltzer, Reed, Clark 1984) notes 2up
Review exokernel paper.  Don't review end-to-end paper, instead apply end-to-end argument to 3 Exokernel design decisions.
Application performance and Flexibility on Exokernel Systems (Kaashoek
9/21 OS Design, Synchronization
1) Synthesis kernel (Massalin and Pu 1989) notes 2up
2) Chapter 6 from Massalin's Thesis (1992) (remainder of thesis is optional)
Hamming's Advice on Research
5 9/26 Threads and concurrency 
1) Mesa (Lampson and Redell 1980)
2) Why Threads Are a Bad Idea (for most purposes)(Ousterhout 1996)  notes  Snotes
3) Double checked locking is broken (Bacon)
Project: Proposal (9/26)
You only need to review the Lampson paper

Programming with Threads (Birrell 1996)
9/28 Scheduling
Scheduler Activations (Anderson et al)  notes Snotes
LESS SW Eng Manual
6 10/3 Communication > Remote Procedure Calls (Birrell and Nelson 1984)  notes   Snotes Communication > Active Messages (vonEicken et. al. 1992)  notes
File Systems & Communication
Design and Implementation of the SUN Network Filesystem (Sandberg 1985) Snotes   
7 10/10 Communication
Eliminating Receive Livelock in an Interrupt-driven Kernel (Mogul 1996) Snotes

10/12 File Systems
1) A Fast File System for UNIX  notes
2) (Optional) An Introduction to Disk Drive Modelling (Ruemmler and Wilkes 1994) Snotes
8 10/17 Virtual memory
Machine-Independent Virtual Memory Management for Paged Uniprocessor and Multiprocessor Architectures (Rashid et al 1987) notes  Snotes(ppt)  Snotes(pdf)
Unix as an Application Process (Golub 1990)
10/19 Virtual Memory & OS Reliability
Mondrix: Memory Isolation for Linux Using Mondriaan Memory Protection (Witchel et. al. 2005)
Improving Reliability of Modern OSes (Swift 2003)
Mondrian Memory Protection (Witchel 2002)
9 10/24 No meeting,  SOSP 2005 From Dahlin's Advice:
Coping with complexity
10/25 Midterm 6-8pm, UTC 1.132
10/26 No meeting, SOSP 2005.
10 10/31 File Systems > Integrity Transaction Concept (Gray 1981)
 notes Snotes
Project: Checkpoint and design review (10/31)
From Dahlin's Advice:
The Emperor's Old Clothes

Linearizability: A Correctness Condition for Concurrent Objects (Herlihy and Wing 1990)
11/2 File Systems > Integrity
The Design and Implementation of a Log-Structured File System (Rosenblum and Ousterhout 1992)  LFS notes
Ousterhout's critique of Seltzer's 1993 paper
Ousterhout's critique of Seltzer's 1995 paper
Seltzer's response to Ousterhout's critiques
Ousterhout's response to Seltzer  Snotes
11 11/7 File Systems > Integrity
Soft Updates: A Technique for Eliminating Most Synchronous Writes in the Fast Filesystem (McKusick and Ganger 1999) Snotes

11/9 Distributed File Systems
Scale and Performance in a Distributed File System (Howard et al, 1988)  AFS notes Snotes
12 11/14 Access Control >
1) Paradigm Regained
2) The Confused Deputy Snotes
 EROS: A Fast Capability System (Shapiro et. al. 1999)
11/16 Security > Experience and failures
1) Reflections on Trusting Trust Snotes (ppt, sxi)
2) Fast and secure distributed read-only file system (Fu et. al. 2002) Snotes
Separating key management from file system security (Mazieres et. al. 1999)
Abadi and Needham, 1996   Prudent notes
13 11/21 Security > Authentication
1) Authentication in Distributed Systems   TAOS notes  Snotes
2) Problems with xbox secure boot
1)A Logic of Authentication BAN notes
2)Implementing an Untrusted Operating System on Trusted Hardware (Lie 2003)
11/23 Security > System
Setuid Demystified (Chen et. al. 2002) Snotes
Why Cryptosystems Fail (Ross J. Anderson 1994)
14 11/28 Multithreaded Debugging
RaceTrack: Efficient Detection of Data Race Conditions via
Adaptive Tracking
(Yu et. al. 2005) Snotes
Career and general advice
Virtual Time and Global States of Distributed Systems (Mattern 1988)
11/30 1) Hints for Computer System Design (Lampson 1983) Snotes
2) A Note on the Confinement Problem (Lampson  1973) Snotes
Instead of a review for Hints paper, give your own hints based on your project experience.
15 12/5
Project Presentation Project: Report (12/12)
12/7 Project Presentations
12/8 Midterm 5:30-7:30pm GEO 2.102

To top of page

Copyright Notice: These lecture notes, homeworks, and lab assignments are part of a graduate course on operating systems. You must ask me permission to use these materials.  I do not grant to you the right to publish these materials for profit in any form.
Emmett Witchel, The University of Texas at Austin