| Date | Topic/Slides | Reading | Announcements |
| Tue Aug 22: |
Introduction Processes Overview |
Silberschatz and Galvin Chapter 3.1-3.4 |
|
| Thur Aug 24: |
no class |
|
|
| Tue Aug 29: |
Intro to Threads |
Birrell "An Introduction to Programming with Threads" |
|
| Thur Aug 31: |
Birrell, con't
Multithreading & Thread Design Patterns |
Silberschatz 4.1-4.2 |
|
| Tue Sep 5: |
Intro to Pthreads Fork and MT libraries |
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 |
Homework 1 out Project 1 out |
| Thur Sep 7: |
Context Switch revisited Scheduling, Scheduling in CMTs
(talk slides)
|
(Solaris handout in class) Silberschatz Ch. 5
Chip Multithreading Systems Need a New Operating System Scheduler |
|
| Tue Sep 12: |
Scheduling cont'd Synchronization constructs |
Silberschatz Chapter 6.1-6.8, Lewis & Berg Ch.6
|
|
| Thur Sep 14: |
Synchronization Cont'd: Serializers, Path Expressions, RWLocks, and Semaphores |
Bloom's paper |
|
| Tue Sep 19: |
Deadlocks and Priority Inversion |
Silberschatz Ch. 7
What Really Happened on Mars (reference only) |
|
| Thur Sep 21: |
Kernels discussion Kernel thread implementation |
Eykholt et al. paper on Multithreading the SunOS kernel |
|
| Tue Sep 26: |
User-level thread
library implementation discussion |
Stein and Shah "lightweight threads" paper |
|
| Thur Sep 28: |
Psyche threads |
First-class
user-level threads paper |
|
| Tue Oct 3: |
Spinlocks for SMPs |
Performance of Spinlock Alternatives for SMPs |
Project 1 due Mon. 10/2 |
| Thur Oct 5: |
Anderson con't. Midterm Review |
|
|
| Tue Oct 10 |
MIDTERM EXAM |
|
Project 2 out |
| Thur Oct 12: |
no class
|
|
drop date Oct. 13 |
| Tue Oct 17: |
no class, fall recess |
|
|
| Thur Oct 19: |
Webserver Architecture discussion Apache model |
Flash: an Efficient and Portable Web Server, by Pai et al. See also the talk
slides Tanenbaum and Van Steen 11.1 |
|
| Tue Oct 24: |
Webserver cont'd |
(Reference only: Why Threads Are a Bad Idea (for most purposes) Why Events Are a Bad Idea (for high-concurrency servers)
Threads vs. Events) |
|
| Thur Oct 26: |
User-level IPC for SMPs |
Bershad et al. paper |
|
| Tue Oct 31: |
RPC |
Implementing Remote Procedure Calls Tanenbaum 2.2 |
|
| Thur Nov 2: |
Sun RPC tutorial |
RPC handouts given in class |
|
| Tue Nov 7: |
Advances in RPC (asynchronous RPC, RMI)
RMI |
A Note on Distributed Computing by Waldo, Wyant, Wollrath, Kendall.
A Distributed Object Model for the Java System
|
Project 2 due Mon. 11/6
Homework 3 out
Project 3 out |
| Thur Nov 9: |
Distributed File Systems |
Tanenbaum Ch. 10 (2002 edition), Silberschatz and Galvin Ch. 17 |
|
| Tue Nov 14: |
Distributed File Systems: NFS case study |
Silberschatz 11.9 (Reference only: Why NFS Sucks) |
|
| Thur Nov 16: |
Distributed File Systems case studies: Sprite |
The Sprite file system (recommended paper: Caching in the Sprite Distributed File System by Nelson et al.) |
Homework 3 due |
| Tue Nov 21: |
Distributed Shared Memory |
Reference paper:Distributed Shared Memory: Concepts and Systems
|
|
| Thur Nov 23: |
no class, Thanksgiving |
|
|
| Tue Nov 28: |
Distributed Shared Memory |
handouts in class |
Homework 4 out |
| Thur Nov 30: |
Hot Topics: Virtualization |
(Reference only: Virtualization Overview) |
|
| Tue Dec 5: |
Hot Topics |
|
Project 3 due Mon. 12/4 |
| Thur Dec 7: |
Wrap-up and Review |
|
Homework 4 due |
| Tue Dec 12: |
FINAL EXAM |
8:00-10:00am, CCB 101 |
|