CS 4210 Advanced Operating Systems
CS 8803 GOS Graduate Introduction to Operating Systems


Fall 2009, MWF 11:05-11:55AM, CCB 101

 
Basic Info | Assignments | Lectures | Technical Info | Additional Info

Announcements: Basic Information: Assignments: Lectures (updated as the semester progresses):
DateTopic/SlidesReadingAnnouncements
Week 1:
8/17-21
Introduction
OS and Processes Overview
Intro to Threads
Silberschatz and Galvin Chapter 3.1-3.4
Birrell "An Introduction to Programming with Threads"
Silberschatz 4.1-4.2
 
Week 2:
8/24-28
Multithreading and Treads Design Patterns
Intro to Pthreads
Silberschatz 4.4.1, 4.4.4-4.6, Lewis & Berg Ch. 5
Lewis & Berg Ch.13, Nichols, et al. Ch. 2
Thread creation example, Producer/Consumer example
Project 1 out
Week 3:
8/31-9/4
Thread library implementation issues:
Kernel vs User-level threads
First Class Threads
Eykholt et al. paper on Multithreading the SunOS kernel
Stein and Shah "lightweight threads" paper
First-class user-level threads paper
reference: NPTL
 
Week 4:
9/7-11
Scheduling Silberschatz Ch. 5
Chip Multithreading Systems Need a New Operating System Scheduler (talk slides)
reference: new Linux scheduler
Mon 9/7 - Labor Day
Week 5:
9/14-18
Scheduling cont'd

Deadlocks, Livelocks, and Priority Inversion
Silberschatz Ch. 7
What Really Happened on Mars (reference only)
 
Week 6:
9/21-25
Synchronization
Advanced Synchronization Constructs: Serializers, Path Expressions, RWLocks, and Semaphores

Spinlocks for SMPs
Silberschatz Chapter 6.1-6.8, Lewis & Berg Ch.6
Bloom's paper

Performance of Spinlock Alternatives for SMPs
 
Week 7:
9/28-10/2
Spinlocks cont'd    
Week 8:
10/5-9
OS Structures, Microkernels, Virtualization
Silberschatz 2.7
James E. Smith, Ravi Nair, "The Architecture of Virtual Machines", IEEE Computer (May 2005).
Rosenblum and Garfinkel, "Virtual Machine Monitors: Current Technology and Future Trends," IEEE Computer, May 2005. (IEEE Xplore)

userful slides
Mon 10/5 - Fall Recess
Week 9:
10/12-16
Mon 10/12: MIDTERM EXAM

Shared Memory
handouts Drop date: 10/16
Week 10:
10/19-23
Webserver
Apache model

CERCS Industry Workshop keynote talks
Flash: an Efficient and Portable Web Server, by Pai et al. See also the talk slides
Tanenbaum and Van Steen 11.1
reference: Why Threads Are a Bad Idea (for most purposes)
Why Events Are a Bad Idea (for high-concurrency servers)
 
Week 11:
10/26-30
User-level IPC for SMPs
RPC
Bershad et al. paper
Implementing Remote Procedure Calls
Sun RPC handouts
 
Week 12:
11/2-6
Advances in RPC (asynchronous RPC, RMI)
Java RMI
Note on Distributed Computing
A Note on Distributed Computing by Waldo, Wyant, Wollrath, Kendall.
A Distributed Object Model for the Java System
 
Week 13:
11/9-11
Distributed File Systems
DFS case study: Sprite
Tanenbaum Ch. 10 (2002 edition), Silberschatz and Galvin Ch. 17
LFS
The Sprite file system (recommended paper: Caching in the Sprite Distributed File System by Nelson et al.)
 
Week 14:
11/16-20
Distributed Shared Memory
DSM and memory consistency models
Distributed Shared Memory: Concepts and Systems
Tanenbaum, Ch. 6.2
 
Week 15:
11/23-27
Large-scale Cluster Services Lessons from Giant-Scale Services  
Week 16:
11/30-12/4
Hot Topics in Systems
Review
   
Week 17:
finals week
Thur. 12/10 FINAL EXAM   8:00-10:00am
Rm. CCB 101 (same as classroom)

Pointers to Technical Information:

Additional Information: