Suppose that there are two types of philosophers. One type always picks up his left fork first (a “lefty”), and the other type always picks up his right fork first (a “righty”). The behavior of a lefty is defined in Figure 6.12. The behavior of a righty is as follows:
begin
repeat
think;
wait (fork[(i+1) mod 5]);
wait (fork[i]);
eat;
signal (fork[i]);
signal (fork[(i+1) mod 5]);
forever
end;
Prove the following:
a. Any seating arrangement of lefties and righties with at least one of each avoids deadlock.
b. Any seating arrangement of lefties and righties with at least one of each prevents starvation.
Figure 6.12 A First Solution to the Dining Philosophers Problem
We need at least 10 more requests to produce the solution.
0 / 10 have requested this problem solution
The more requests, the faster the answer.