The exam is Friday 3/30. It is closed book and closed notes. Chapters: 1, 2, 3, 4, 5, 6, 7.2.1 (Necessary Conditions for Deadlock), 8. Possible Problems: 1. Definitions/short answer - operating system - process - the five states of a process - thread - context-switching - four conditions for deadlock - internal and external fragmentation - logical and physical address 2. Comparing CPU scheduling algorithms: FCFS, RR, and SJF. 3. Given a solution to the two-thread critical section problem: - is mutual exclusion satisfied? - is bounded waiting satisfied? 4. Semaphores: definition of P and V operations, small programming problem. 5. Monitors: small programming problem, semantics of operators (e.g., why must wait() appear in a while-loop instead of an if-statement?) 6. Hardware support for paging (Fig. 8.7 "Paging Hardware" and Fig. 8.11 "Paging Hardware with TLB" from text). 7. Effective memory access time (section 8.4.2) 8. fork/join 9. Write a small multithreaded Java program.