COMP 421: Lecture Notes


  • Introduction
  • Introduction to Processes
  • Threads
  • Introduction to Synchronization
  • Semaphores
  • Semaphore Implementation
  • Monitors
  • Wait-free Synchronization
  • Communication with Messages
  • Introduction to Storage Allocation (not covered in class)
  • Dynamic Storage Allocation (not covered in class)
  • Segmentation and Paging
  • CPU Scheduling
  • Deadlock
  • Virtual Memory
  • I/O Devices
  • File Structure, Disk Scheduling
  • UNIX Filesystem
  • Naming
  • Filesystem API
  • File Caching
  • File Locking/Reliability
  • Transactions
  • Protection and Security
  • Encryption
  • More Encryption
  • Networking and Communication Protocols
  • Distributed Systems (Overview)
  • John Ousterhout's Mini-Sermons
  • Course Review