Topics List for Qualifying Examination: Operating Systems

Uniprocessor Topics

  1. OS Structure: Monolithic, modular, microkernel. Virtual machines
  2. Virtual Memory: Protection, Sharing, Translations, Page Replacement Strategies. Multiple-level forward, inverted and hashed page tables
  3. Process Management: Scheduling, context switches
  4. Concurrency: mutual exclusion, deadlock, critical sections, race conditions, semaphores, monitors, locks, barriers other mutual exclusion primitives.
  5. Classical OS-related algorithms: Dekker's Algorithm, Peterson's Algorithm, etc.
  6. Classical OS-related problems: dining philosophers, bounded-buffer, etc.
  7. Disks and File Systems

Multiprocessor Topics

  1. Distributed operating systems
  2. Distributed file systems
  3. Message-passing: sockets, RPC, MPI, CORBA, DBus
  4. Process Migration
  5. Software distributed shared memory and memory consistency models
  6. Time and Clocks
  7. Data Integrity (especially cyclic redundancy checks)