Question: Concurrency and Synchronization
a) Define the following terms:
I. Critical section
II. Mutual Exclusion
III. Deadlock
IV. Starvation.
b) Name three methods which are usually used in synchronizing processes.
c) What are semaphores used for?
d) What is the concept of an atomic operation?
e) Describe the concept involved in the producer - consumer problem.
f) Semaphores support two types of atomic operations? What are they? And what does each type of operation represent?
g) There are two types of semaphore implementation. State them and what are the operations involved in each of them.