Operating System Midterm Review, Fall 2009
Student Originated Software
http://grace.evergreen.edu/sos/
Use Refresh on your browser to get the most recent update of class pages.
Chapter 1
- Interrupt IO, Polling IO
- Throughput, Response time, Utilization
- Interrupt processing sequence (p22)
- Program Status Word
- Instruction Execution Cycle (including interrupt check)
- Processor Registers
- Memory Hierarchy, Virtual Memory, Caching
- Problems: Something about the instruction execution cycle or interrupts.
Chapter 2
- Multi-programming
- Swapping
- OS as resource management
- OS as virtual machine with services
- Protection
- Service calls
- Management of File systems
- Management of IO devices
- Shell
- Problems: Something about multi-programming, like a throughput/response time/utilization question for a set of processes or threads on a uni-processor and/or symetric multiprocessor. Maybe a problem based on ideas like in Fig 4.4 p163.
Chapter 3, Processes
- Process
- Process states
- Process switching
- Process Table and process control block
- Blocking vs Suspension
- User mode vs Kernel mode
- Mode switching (how, why)
- System call sequence
- Traps vs interrupts
- Interrupt processing
- OS Architecture (fig 3.15) - monolithic, OS in user space (Unix), process based
- Unix process states (Fig 3.17)
- Unix process switching
- Problems: Process states in Unix. What state to go to next in a given
scenario of system configuration. Another: In this C program with forks and signals, show the sequence of execution of processes on a symetric multiprocessor and/or a uniprocessor. Or maybe show the sequence of process states each process goes through in the C program.
Chapter 4, Threads
- Threads vs Processes
- Thread states
- User level threads, kernel threads, combined User/Kernel threads
- Thread switching
- Symetric multiprocessing
- User mode vs kernel mode
- Mode switching in threads
- Problems: 4.1, 4.2, 4.3 maybe
Chapter 5, Concurrency
- Mutual Exclusion, Critical Regions
- Resource competetion & mutual exclusion
- Shared memory and data corruption problems
- Test and Set, Exchange hardware instructions for mutual exclusion
- Busy waiting
- Concurrency vs parallel processing
- Semaphores
- Monitors ( Lampson/Redell mostly)
- Message passing
- Producer consumer problems and solutions
- Readers and writers problems and solutions
- Problems: 5.3, 5.8, 5.12, 5.14, *5.17b
Chapter 6, Deadlock & Starvation
- Deadlock conditions, (necessary and sufficient)
- Deadlock or starvation scenarios (like homework).
- Bankers algorithm and sample problems (like homework).
- Problems: 6.3 - 6.6, 6.10, *6.15, 6.16