Question: 5. (10 points) Consider the following code snippet in which proc in which processes use the test and set instruc- on for mutual exclusion. The
5. (10 points) Consider the following code snippet in which proc in which processes use the test and set instruc- on for mutual exclusion. The shared variable lock is initialized to h int lock - 1; heshared lock variable ! lock - 1; This int test and set (int mutex) { if (mutex - 1) *mutex - 0; return 1; return 0; void f (void) { while (1) while (!test_and_set(&lock)); 1+ Critical section / lock = 1; /* Reset the lock */ 20 ) Using a specific example, show that mutual exclusion will be violated if test and set were a non- atomic operation. (Hint: Consider a possible interleaving of the execution of two processes)
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
