150 likes | 259 Views
COMS 414 - Prelim 1 Review Session. Multiprocessing and Synchronization Sunny( srg8@cornell.edu ) Vivek( vu22@cornell.edu ). Prelim 1. There are many, many resources available for your Prelim 1 needs: (presented in random order) Your notes! The book and its website
E N D
COMS 414 - Prelim 1 Review Session Multiprocessing and Synchronization Sunny(srg8@cornell.edu) Vivek(vu22@cornell.edu)
Prelim 1 • There are many, many resources available for your Prelim 1 needs: (presented in random order) • Your notes! • The book and its website • FA2000 Homeworks/Solutions • FA2000 Prelim 1 review slides • SP2001 Lecture notes • Newsgroup • Plenty of office hours! • Additional support by appointment
Before we begin … • Any questions from the CS314 review session? • Register set, stack, heap • Program counter • Interrupts / exceptions • Interrupt priority levels • Programmable I/O vs. DMA • Polling • Memory protection (base/limit)
Multitasking • What is a: • Process or Task? • Thread? • What is the difference between a program and a process? • What is in the PCB? • Differences between O/S processes and user processes? • Differences between user-level threads and kernel-level threads?
Multitasking • What is kernel space? • What is user space? • What is a system call? • What is a context switch? • What states may a process be in? • How do processes go between states? • What is a race condition?
Synchronization • What is a critical section? • What are the three requirements for protection of a critical section? • What is busy waiting? • What are atomic instructions? • What is a semaphore?
Synchronization • Three levels of abstraction for concurrent programming: • Hardware instructions • O/S functions • Programming language constructs
Vivek Presents … • Classic Synchronization Problems • Monitors, Condition Variables and Language Support • Deadlocks, Prevention and Avoidance
Monitors • What is a monitor? • What are condition variables? • Differentiate between semaphores and condition variables.
Synchronization Problems • Bounded buffer problem • Readers writers problem • Dining philosophers problems
Deadlock • What is a deadlock? • Necessary conditions for deadlock ?
. . P1 P2 P3 . . R3 Deadlocks R1 R2
Deadlocks R1 R2 . . P1 P2 P3 . . . R3 P4
Deadlock Prevention Make sure that one of the necessary conditions does not hold -- Mutual exclusion -- Hold and Wait -- No Pre Emption -- Circular Wait
Deadlock Avoidance • What is it? • What is Safe State? • Safety Check? • Bankers Algorithm