Review
Guide for Test 1
Test 1 will be Oct. 10.
The test is closed book, but you will be allowed one 8 1/2" x
11" sheet of paper filled with notes of your choosing. (You may write on
both the front and back side of the paper.)
Chapter 1
- What
is an OS? Goals of OS
- Historical
development of OS
- Present
systems: PC, parallel systems, real-time
Chapter 2
- Hardware
support for OS: Dual-mode operation, memory-management unit, CPU timer
- System
call mechanism
- Interrupts
Chapter 3
- Read on your own. (I might take one question from this chapter, because I do
want you to read it.)
Chapter
4
- Types
of processes: system, user
- OS
management operations: process creation & termination, scheduling,
mechanisms for synchronization, communication, and deadlock
- Process
State Diagram
- Process
control block
- Process
scheduling queues: short-term, medium-term, and long-term
- Interprocess
Communication: shared memory vs. message passing
Chapter 5
- Threads
- Implementations:
kernel-level, user-level, and combination
Chapter 6
- CPU
scheduling
- Process
categories: I/O bound and CPU bound
- Scheduling
Algorithms: FCFS, Round Robin, SJF, multi-level scheduling queue, multilevel
feedback queues,
Chapter 7
- Process
synchronization
- Terms:
race condition, mutual exclusion, entry, critical, exit, and remainder
sections
- Conditions
necessary for mutual exclusion solution
- Mutual
exclusion with busy waiting: disable interrupts, test-and-set instruction,
software solutions (Peterson's and Bakery algorithms)
- Classical
synchronization problems: bounded-buffer, readers and writers,
dining-philosophers problem
- Programming
Language constructs: critical regions and monitors
Chapter 8. Deadlock
- Definition
of deadlock
- Two
types of resources: preemptable resource and nonpreemptable
- Necessary
Conditions for deadlock:
1)
mutual exclusion,
2)
hold and wait,
3)
no preemption,
4)
Circular wait
- Resource-allocation
graphs
- Strategies
used for dealing with deadlock:
1)
Ignore the problem - "Ostrich algorithm"
2)
Detection and recovery
3)
Dynamically avoid deadlock by careful resource allocation
4)
Deadlock Prevention
- Deadlock
Prevention Examples
- Banker's
Algorithm for Deadlock Avoidance - safe state, etc.
- Deadlock
Detection Algorithm
- Recovery
from Deadlock approaches