Lecture Notes

CS422/522: Design and Implementation of Operating Systems, Fall 2021, Yale University

Lecture notes will be made shortly after each lecture.

  • Lecture 1 (Sep 1): Introduction

  • The following are the lecture notes used in Fall 2020:
  • Lecture 1 (Sep 1): Introduction (pdf)
  • Lecture 2 (Sep 3): The Kernel Abstraction (pdf)
  • Lecture 3 (Sep 3): Project Overview (pdf)
  • Lecture 4 (Sep 8): Memory Management & The Programming Interface (pdf)
  • Lecture 5 (Sep 10): Concurrency and Threads (pdf)
  • Lectures 6-8 (Sep 15-22): Synchronization (pdf)
  • Lectures 8-9 (Sep 22-24): Implementing Synchronization (pdf)
  • Lectures 9-10 (Sep 24-29): Multi-Object Synchronization (pdf)
  • Lectures 11-12 (Oct 1-6): CPU Scheduling (pdf)
  • Lectures 12-13 (Oct 6-8): Address Translation (pdf)
  • Lectures 13-14 (Oct 8-13): Cache and Virtual Memory (pdf)
  • Lecture 14 (Oct 13): I/O Devices and Drivers (pdf)
  • Lecture 15 (Oct 15): Storage Devices (pdf)
  • Lectures 16-17 (Oct 20-22): Files and Directories (pdf)
  • Lectures 17-18 (Oct 22-27): Reliable Storage (pdf)
  • Lectures 18-20 (Oct 27 - Nov 3): Security and Trust (pdf)
  • Lecture 20 (Nov 3): Midterm Review (pdf)
  • Lecture 21 (Nov 10): Networking & Protocol Stacks (pdf)
  • Lecture 22 (Nov 12): Distributed Systems (pdf)
  • Lecture 23 (Nov 17): Replication and Consensus (pdf)
  • Lecture 24 (Nov 19): Real-Time Systems (pdf)

  • Copyright (c) 1995-2021, Zhong Shao, Dept. of Computer Science, Yale University