Study Guide for CS414
Final
Posted: Sunday Dec 9 2007
1.
If you have the 6th edition,
1. Chapter 7: Synchronization
1.
NOT 7.6 (“Critical Regions”)
2. NOT 7.8 (“OS Synchronization”)
3. NOT 7.9 (“Atomic Transactions”)
2.
Chapter 8: Deadlock
3.
Chapter 9: Memory Management
4.
Chapter 10: Virtual Memory
5.
Chapter 11: File System Interface
6.
Chapter 12: File System Implementation
1.
NOT 12.8 (“Log-structured file system”)
2.
NOT 12.9 (“NFS”)
7.
Chapter 13: I/O Systems
1.
NOT 13.6 (“Streams”)
8.
Chapter 14: Mass-Storage Structure
1.
NOT 14.7 ("Stable-Storage
Implementation")
2.
NOT 14.8 ("Tertiary-Storage Structure")
9.
Chapter 18: Protection
1.
NOT 18.6 (“Capability-Based Systems”)
2.
NOT 18.7 (“Language-Based Protection”)
10.
Chapter 19: Security
1.
NOT 19.8 (“Computer-Security Classifications”)
2.
NOT 19.9 (“An Example: Windows NT”)
2.
If you have the 7th edition,
1. Chapter 6: Synchronization
1.
NOT 6.8 (“Synchronization Examples”)
2. NOT 6.9 (“Atomic Transactions”)
2.
Chapter 7: Deadlock
3.
Chapter 8: Main Memory
1.
NOT 8.7 (“The Intel Pentium”)
4.
Chapter 9: Virtual Memory
1.
NOT 9.7 (“Memory-mapped files”)
2.
NOT 9.8 (“Allocating Kernel Memory”)
3.
NOT 9.10 (“Operating-System Examples”)
5.
Chapter 10: File System Interface
1.
NOT 10.5 (“File sharing")
6.
Chapter 11: File System Implementation
1.
NOT 11.8 (“Log-structured file system”)
2.
NOT 11.9 (“NFS”)
3.
NOT 11.10 (“WAFL”)
7.
Chapter 12: Mass-Storage Structure
1.
NOT 12.8 ("Stable-Storage
Implementation")
2.
NOT 12.9 ("Tertiary-Storage Structure")
8.
Chapter 13: I/O Systems
1.
NOT 13.6 ("Streams”)
9.
Chapter 14: Protection
1.
NOT 14.8 (“Capability-Based Systems”)
2.
NOT 14.9 (“Language-Based Protection”)
10.
Chapter 15: Security
1.
NOT 15.8 (“Computer-Security Classifications”)
2.
NOT 15.9 (“An Example: Windows XP”)
1.
NOTE:
the clear exception to this "rule" is with regard to Linux/UNIX file
systems (inodes, VFS, etc.)
Material
to Know (in addition to the material for the midterm)
Process synchronization
producer/consumer problems, race conditions
critical section problem
solution characteristics: mutual exclusion, progress, bounded waiting (no starvation)
hardware support for synchronization
semaphores, busy waiting vs. blocking
monitors
Deadlock necessary conditions: mutual exclusion, hold&wait, no preemption, circular wait system resource allocation graph prevention: difficult/costly in practice, circular wait best candidate avoidance: safe state, safe sequence resource allocation graph algorithm (if one of each resource) Banker's algorithm (if multiple resource instances) detection: wait-for graph (if one of each resource) deadlock detection algorithm (if multiple resource instances) recovery: either preempt resources or abort processes
Memory Management Address binding Logical (virtual) versus physical address space Swapping Contiguous Memory Allocation (fixed-sized partitions) External vs. internal fragmentation Paging (not in the context of Virtual Memory) Translation look-aside buffer (TLB) Shared pages Segmentation Virtual Memory Demand paging Mechanism of the page-fault trap (e.g., p. 326) Locality of reference Performance (effective access time) Memory-mapped files Page-replacement (FIFO, Optimal, LRU, LFU, MFU) LRU Approximation Allocation of Frames (equal allocation, proportional allocation, global vs. local replacement) Thrashing (and working-set model) Small vs. Large page size File-System Interface File concept Access Methods (sequential, direct) Directory structure File System Mounting File sharing Protection File-System Implementation File-system structure File-system implementation Directory implementation Allocation methods (contiguous, linked allocation, indexed allocation) Indexed allocation: linked vs. multi-level vs. combined scheme Free-space management (bit vector, linked list, grouping, counting) Efficiency and Performance (e.g., on-board cache, disk cache, page cache I/O Systems I/O Hardware (port registers: status, control, data-in, data-out) Polling vs. Interrupts Direct Memory Access (e.g., Figure 13.5) Application I/O interface Kernel I/O Subsystem (buffering, caching, spool) Transforming I/O to Hardware Operations (e.g., Figure 13.10) Mass-Storage Structure Disk structure Disk scheduling (seek time, rotational latency, bandwidth) FCFS, SSTF, SCAN. C-SCAN, LOOK, C-LOOK Disk management Swap-Space management RAID Structure (basic concepts; not necessary to memorize the levels) Tertiary-Storage Structure (e.g., performance)
Protection
Goals
Domain of
Protection
Access Matrix
Implementation
(Global table, access lists, capability lists)
Revocation
of Access Rights
Security
Security Problem
User Authentication
Program Threats (Trojan horse, trap
door, stack/buffer overflow)
System Threats (
Securing Systems and Facilities (e.g.,
firewall, intrusion detection, auditing, tripwire,
System-call monitoring)
Cryptography (as covered in class)