SYSTEMS QUALIFYING-EXAM SYLLABUS (June 2002)
Primary Reference:
Silberschatz et al, Operating Systems Concepts, 6th Edition
Other References:
Sections 5.4, 6.3, 8.3, Tanenbaum, Modern Operating Systems, 2nd Edition.
Below is a list of topics and associated chapters from
Silberschatz. Some chapters have a short list of their most important
topics.
For the qualifying exam you will be expected to apply
OS concepts to solving problems, not to recite memorized OS facts.
Introduction/Background [Chapters 1-3]
Processes, Threads, and Synchronization [Chapters 4-7]
- Threads and processes: implementation of
creation, termination, context-switch, etc.
- Synchronization concepts:
mutual exclusion and condition synchronization,
atomic operations, interrupts,
busy-waiting vs. blocking,
fairness and starvation
- Synchronization constructs: implementation and use of
semaphores, locks and condition variables, etc.
- Classic synchronization problems: mutual exclusion,
producer/consumer, readers/writers, etc.
CPU Scheduling [chapter 6]
Deadlock [chapter 8]
Memory Management [chapter 9]
- Swapping
- Paging: hardware support, TLB, multi-level paging, protection, page tables
- Segmentation: hardware support, paging with segmentation
Virtual Memory [chapter 10]
- Demand paging
- Process creation: copy on write, memory mapped files
- Page replacement algorithms, thrashing
File Systems [chapter 11-12]
- Free space management, directories, files, inodes
Input-Output [chapter 13]
Mass Storage [chapter 14]
- Disk scheduling, performance, formatting
- RAID
Distributed Systems [chapter 15]
Distributed Coordination [chapter 17]
Protection and Security [chapters 18-19]