Jump to content

Talk:Peterson's algorithm

Page contents not supported in other languages.
From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by 195.109.9.2 (talk) at 07:36, 17 October 2006. The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

This External Link leads to a trivialization of Peterson's Algorithm.

It uses the AND operator and does not reset the flags. After the first run, which is interleafed, it reverts to serial runs, which is a trivialization of Peterson's original algorithm (1981). Using Peterson's original OR operator and resetting the flags as he does, every run is interleafed. These results have been checked by my research student, Ali Nademi, who has tested these runs using SPIN. Ali notes also that the run using the AND with no flag reset has no assertion violations. Even so, the interleafing stops after the first run. Since serial ordering of processes has no concurrency problem, there are no conflicts. Batch processing in serial order removes any need for the mutual exclusion algorithm, which is why we say that the AND version of Peterson's algorithm is a trivialization of the original intent.

GWO, 08-2005 I changed it back to the AND operator including a flag reset, because it didn't work as it was... Interleaving also seams to be fine now.


Shouldn't this article be a stub? The actual algorithm itself isn't discussed anywhere...


I came here from the Dutch page. Which gives a full formal proof (albeit in dutch) of the algorithm, and cites an english book (which I can verify, as I have it too). Also, is it really necessary to have an entire piece of C-code? Nice and fancy, but a very simple scetch(sp?) of the problem, and the proper solution should do just fine.