Wk |
Date |
Discussion
Topic |
Homework/
Extra Reading |
1 |
8/30 |
Review syllabus and HW1. notes
How (and How Not) to Write a Good
Systems Paper
(Levin and Redell 1983) |
HW1
|
2 |
9/4
|
No
meeting:
Labor Day.
1)
Medical Devices: The
Therac-25 (Levinson 1993)
2) The
Rise of "Worse is Better"
(Richard
Gabriel)
|
The
Task of
the
Referee
See Dahlin's Advice
|
9/6 |
Historical
perspective & OS Design
1) THE
(Dijkstra 1968)
notes
2) The UNIX
Timesharing System (Ritchie and
Thompson 1974) notes
2up
|
HW1
in-class quiz
|
3 |
9/11 |
OS Design
1) Application
performance and
Flexibility on Exokernel Systems (Kaashoek
et.al.1997) 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. Exokernel:
An
Operating System Architecture for Appliation-Level Resource Management
(Engler et al, 1995)
|
9/13 |
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 |
4 |
9/18 |
Virtual Machines and
Multiprocessors
Disco: Running
Commodity Operating Systems on Scalable Multiprocessors (Bugnion
et al, 1997) notes
2up |
Programming Assignment 0
DUE
Historical perspective
Protection and the Control of
Information Sharing in
Multics (Saltzer 1974)
Multics
(Daley
and Dennis) notes
List
of 5 papers you can
present
due Monday 9/18. Email list to Witchel. |
9/20 |
Virtual Machines
Memory
Resource Management
in VMware ESX Server (Waldspurger
2002) notes 2up |
|
5 |
9/25 |
Microkernels
1) On
Micro-Kernel
Construction (Liedtke 1995) notes
2)
The Linux Edge (Linus
Torvalds 1999) |
Unix
as an Application Process (Golub
1990)
Why
Aren't Operating Systems
Getting Faster As Fast As Hardware? (Ousterhout
1990)
Machine-Independent
Virtual Memory Management for Paged Uniprocessor and Multiprocessor
Architectures (Rashid et al
1987) notes
Snotes(ppt) Snotes(pdf) |
9/27
|
File
Systems
&
Communication
1) Eliminating
Receive Livelock
in an Interrupt-driven Kernel (Mogul
1996) Snotes
2) Event-driven
Programming
for Robust Software (Dabek et.
al. 2002)
|
Communication
Active
Messages (vonEicken et. al.
1992) notes |
6 |
10/2 |
Threads and
concurrency
1) Experiences with
Processes and Monitors in Mesa
(Lampson
and
Redell 1980) notes Snotes
2) Why
Threads Are
a Bad Idea (for most purposes)(Ousterhout
1996) notes
Snotes
3) Double
checked
locking is broken
(Bacon) JSR
133 (Java Memory Model) FAQ
(Manson) just the section on double
checked locking. |
Programming
with
Threads
(Birrell 1996)
|
10/4 |
Multithreading
RaceTrack:
Efficient
Detection of Data Race Conditions via Adaptive Tracking
(Yu et. al.
2005) notes Snote |
Virtual Time and
Global States of
Distributed Systems (Mattern
1988)
Linearizability: A
Correctness
Condition for Concurrent Objects
(Herlihy and Wing 1990)
LESS SW Eng Manual
Scheduler
Activations
(Anderson et al) notes
Snotes |
7 |
10/9 |
File
Systems
1) A Fast File System
for UNIX notes 2up
2) (Optional) An
Introduction to Disk Drive Modelling (Ruemmler
and Wilkes
1994) Snotes |
Programming Assignment 1
DUE (10/09)
|
10/11 |
File Systems
The Design and
Implementation of a Log-Structured File System
(Rosenblum
and Ousterhout
1992) LFS notes 2up
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 |
8 |
10/16 |
File Systems
> Integrity
Soft Updates:
A
Technique for Eliminating Most Synchronous Writes in the Fast
Filesystem (McKusick and Ganger
1999) Snotes |
|
10/18 |
Distributed File
Systems
Scale and
Performance in a Distributed File System
(Howard et
al, 1988)
notes 2up Snotes |
9 |
10/23 |
1) Design
and
Implementation of the SUN Network Filesystem (Sandberg
et.al.
1985) Snotes
2) A toolkit
for
user-level file systems
(Mazieres 2001) |
Remote
Procedure
Calls (Birrell and Nelson 1984)
notes
Snotes
Lessons
Learned Tuning 4.3BSD Reno Implementation of the NFS Protocol
(Macklem 1991)
From Dahlin's Advice:
Coping with complexity |
10/25 |
Midterm
review
|
10/25 |
Midterm
5-8pm, PAI 3.20 |
8 |
10/30 |
System scale
The
Google
File System (Ghemawat et. al.
2003)
|
Programming
Assignment 2 DUE (10/30)
Programming
Assignment 3 Plan DUE (10/30)
|
11/1 |
System scale
BigTable:
A system for
Distributed Structured Storage
(Chang et. al. 2006)
webnotes
video
|
|
10 |
11/6 |
System scale
MapReduce:
Simplified
Data Processing on Large Clusters (Dean
and Ghemawat 2004) |
From
Dahlin's Advice:
The Emperor's Old
Clothes
|
11/8 |
Virtual memory
Practical,
transparent operating system support for superpages
(Navarro et.
al. 2002)
|
12 |
11/13 |
Database transactions
Transaction Processing: Concepts and Techniques (Jim Gray and Andreas
Reuter 1985)
1.1 - 1.2.5
4.2, 4.7, 4.9
7.1-7.6
notes Snotes |
Programming
Assignment 3 Revised Plan DUE
(11/13)
|
11/15 |
Security
1) Understanding
Data Lifetime
via Whole System Simulation
(Chow et.
al. 2004)
2) Reflections on
Trusting Trust Snotes (ppt, sxi) |
Shredding Your
Garbage:
Reducing Data Lifetime Through Secure
Deallocation (Chow et. al. 2005)
Non-Control-Data
Attacks
Are Realistic Threats (Chen et.
al. 2006)
|
13 |
11/20 |
Security
1)
Authentication in the TAOS Operating System TAOS
notes Snotes
2) 17
Mistakes Microsoft Made in the Xbox Security System (Steil 2005) |
1)A
Logic of
Authentication BAN
notes
2)Implementing an
Untrusted Operating
System on Trusted Hardware (Lie
2003)
Abadi and Needham,
1996
Prudent notes |
11/22 |
Security
1) Fast
and secure distributed
read-only file system (Fu et.
al. 2002) notes Snotes
2) Crisis
and Aftermath
(Spafford 1988)
|
Why
Cryptosystems
Fail (Ross J. Anderson 1994)
Backtracking
Intrusions
(King et. al. 2003)
Separating
key management from file system security
(Mazieres et. al. 1999) |
14 |
11/27 |
Memory Protection
Mondrix:
Memory
Isolation for Linux Using Mondriaan Memory Protection
(Witchel et.
al. 2005) notes
|
Improving
Reliability of Modern OSes (Swift
et.al. 2003)
Mondrian Memory
Protection (Witchel et.al. 2002) |
11/29 |
Access
Control
1) Capability
Myths Demolished (Miller 2003)
2) The
Confused Deputy Snotes
|
EROS: A
Fast Capability
System (Shapiro et. al. 1999) |
15 |
12/4
|
System
building
experience
1) Hints for Computer System Design
(Lampson 1983) Snotes
2) A Note on
the
Confinement Problem (Lampson
1973) Snotes
Project Presentations |
Instead
of a review for Hints paper, give your
own
hints based on your project experience.
Career
and general advice |
12/6 |
Project
Presentations and review |
Programming
Assingment 3 DUE (12/06) |
12/6 |
Midterm
5-8pm PAI 3.20 |
|