What is a race condition? Give a real-world example. Describe how a race condition is possible and what might be done to prevent the race condition from occurring.

Process Synchronization

Mostly use class presentations.
Review questions for process synchronization:

(1) Explain in a paragraph what synchronization is and why we need it. Include a brief description of the producer-consumer problem.

(2) What is a critical section? Describe an example.

(3) Can you think of your own example of a deadlock (other than OS), and explain how you would solve it?

(4) What is a race condition? Give a real-world example. Describe how a race condition is possible and what might be done to prevent the race condition from occurring.

(5) What is the meaning of the term busy waiting? What other kinds of waiting are there in an operating system? Can busy waiting be avoided? Explain your answer.