Question: semaphore S: Consider the following two processes that share a common variable X and a // Shared variable int x =2; binary semaphore S

semaphore S: Consider the following two processes that share a common variable X and a // Shared variable int x =2; binary semaphore S = 1; Process Pl: //initialisation code int Y; P(S); P11: Y 2*X; P12: XY; V(S); //other code Process P2: //initialisation code int Z; P(S); P21: Z - X+1; P22: X-2; V(S); //other code The line numbers P11, P12 and P21, P22 have been added to the left of each statement. How many different values of X are possible after both processes finish executing? What are those values? Explain your answer showing all the possible execution traces. (10 marks)
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
