while(1) { // thread i (0 <= i < n)
for (j=1 ; j<n ; j++) {
flag[i]=j;
last[j]=i;
for (k=0 ; k<n ; k++) {
if (k==i) continue;
while (flag[k]>=flag[i] && last[j]==i) {
sleep(random());
}
}
}
// critical section
...
// end of critical section
flag[i]=0;
// not critical section
...
// end of not critical section
}
Dekker algorithm has much more complex code with higher efficiency, while Peterson has simpler code. Imran Dekker algorithm has also the disadvantage of being not expendable (maximum 2 processes mutual exclusion, while Peterson can be extended for more then 2 processes. more info here: http://en.wikipedia.org/wiki/Peterson%27s_algorithm#The_Algorithm_for_more_then_2_processes
Yes Petersons algo satisfies Mutual exclusion, Progress and bonded waiting and is more efficient than Dekker's algo.
* amazon.com * Walmart * Target * Toys R us
Dekker Dreyer's birth name is Ryan Dekker Dreyer.
Albert Dekker's birth name is Albert Van Dekker.
Fiet Dekker's birth name is Sophia Christina Dekker.
Albert Dekker is 6'.
Chris Dekker was born in 1945.
Sybilla Dekker was born in 1942.
Cees Dekker was born in 1959.
Mark Dekker was born in 1969.
Dekker Curry was born in 1966.