Midterm 2 Review
Tom Kelliher, CS42
Nov. 6, 1996
- Semaphores, locks, condition variables.
- Synchronization problems: bounded buffers, sleepy barber,
readers/writers, cigarette smokers, dining philosophers.
- Critical regions, monitors.
- Deadlock:
- Necessary conditions.
- Resource allocation graphs.
- Detection/recovery, prevention, avoidance.
- Safe, unsafe state. Banker's algorithm.
- Memory management:
- Address binding.
- Dynamic loading, linking, shared libraries
- Logical, physical addressing.
- MMU architectures.
- Swapping. Optimizations.
- Contiguous allocation schemes: fixed and variable partitions.
- Internal, external fragmentation.
- Placement policies: first, best, worst fit. Hole combining,
memory compaction.
- Paging:
- Frame sizes - power of 2.
- Entire process in memory.
- Page onto frame mapping.
- Address translation.
- Paging hardware. Page tables. TLBs.
- Shrinking the page table: multi-level paging.
- Protection, sharing.
- Secondary Storage:
- Disk structure.
- Components of disk access time.
- Disk request scheduling: FCFS, SSTF, SCAN, C-SCAN, LOOK, C-LOOK.
- Virtual memory:
- As opposed to paging.
- Advantages.
- Why it works. Assumptions.
- Kernel, CPU, MMU support.
- Page fault sequence. Page fault penalty (average access time).
- Replacement policies:
- FIFO. Belady's anomaly.
- Optimal.
- LRU.
- Clock.
Implementation, approximations? Reference strings.
- Placement policies:
- Minimum # of frames.
- Equal, proportional allocation.
- Global vs. local victims.
- Thrashing.
- Working set, page fault frequency models.
Thomas P. Kelliher
Mon Nov 4 17:39:49 EST 1996
Tom Kelliher