Introduction to Operating Systems
Basic Terminology & Definitions:Concurrency, Process synchronization, Mutual Exclusion, Race Condition,Critical Section, Data Coherence, Deadlock, Livelock, starvation, atomic operation, busy waiting, Semaphore, Monitor, message passing, mutex,
Principles, Approaches and Requirements:process
computation synchronizations, properties
of Critical Section implementation, solution mechanisms to achieve concurrency,
requirements for mutual exclusion, design issues for concurrency
Software Approaches:Dekker’s solution, Peterson’s solution, Comparison
of both solutions
Hardware Approaches:Dekker’s solution, Peterson’s solution, Comparison
of both solutions
Support from Operating systems and Programming
Languages:Semaphores, Monitors, Message passing
Concurrency Mechanisms in different OS:Concurrency in Unix, Solaris and windows
Solutions To Classical Problems:Solutions to producer-consumer problem,
readers-writers problem, sleeping barbershop problem using semaphore, monitors
and message passing
Multiple Choice Questions