CS 350 - Operating Systems

Reading Materials

Web Page for Current Term : University of Waterloo : Faculty of Mathematics : School of Computer Science

A Collection of Tutorials and Useful Information



Textbook Readings and Lecture Notes

In the table below, the column labeled "Silberschatz" refers to chapters in the 8th Edition of Operating System Concepts, by Silberschatz, Galvin and Gagne (John Wiley and Sons), which was formerly used as a textbook for this course. Although we are no longer using it, we've left the Silberschatz chapter references in the table for the benefit of those who may have copies of that text. Unless you already have a copy of the Silberschatz text, we recommend Three Easy Pieces.

Subject Silberschatz Three Easy Pieces 2up Notes 1up Notes
Introduction; Background and Overview Chapters 1-2 Intro 2-up 1-up
Threads N/A (see the Intro by Birrell above) Dialogue  Intro  Threads 2-up 1-up
Synchronization Chapters 3 (3.4.1), 6 and 7 Locks  Lock Use  CV's
Semaphores  Monitors  Bugs
Summary Dialogue
2-up 1-up
Processes, The Kernel, and System Calls Chapters 2 (2.3, 2.4) and 3 (3.1-3.3) Dialogue  Processes
Process API  Context Switch & Sys Calls
2-up 1-up
Virtual Memory Chapters 8 and 9 Address Spaces  Memory API
Address Translation  Segmentation
Paging  TLBs (Faster)
Smaller Page Tables  Replacement/Swapping
Replacement Algorithms
2-up 1-up
Scheduling Chapter 5 Scheduling  MLFQ  Multiple CPUs 2-up 1-up
I/O Chapters 12 and 13 Devices  Hard Disks 2-up 1-up
File Systems Chapters 10 and 11 (excluding 11.8, 11.9) Files  File System  FSCK & Journaling 2-up 1-up
Interprocess Communication and Networking Chapter 3 (3.4-3.6) Not Covered 2-up 1-up