Question: Question 6 (10 marks) : Consider the following two processes that share a common variable X and a semaphore S: // Shared variable int X

Question 6 (10 marks): Consider the following two processes that share a common variable X and a semaphore S:

// Shared variable

int X =2;

binary semaphore S = 1;

Process P1: Process P2:

//initialisation code //initialisation code

int Y; int Z;

P(S); P(S);

P11: Y = 2*X; P21: Z = X+1;

P12: X = Y; P22: X = Z;

V(S); V(S);

//other code //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.

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!