>From: Gordon Vreugdenhil <gordonv@model.com> >This issue is why counting semaphores traditionally only >allow a single request even though you can do a multiple >release. Allowing a multi-request can cause process >starvation if you have high-frequency single requests >that never allow the count to reach the number of the >multi-request. Allowing only single requests means >that a request for N iterates and could block multiple >times but will eventually succeed if progress is being >made in the system. Though of course it can lead to a deadlock, where multiple processes are holding a subset of the keys they need, and none can make progress. >I don't like the semantics that Arturo is suggesting. Do >we really want to increase the chances of starvation >in sytems? I am willing to acknowledge that I don't know the use-model for which these are intended. It may be that there is a reason why a "greedy" arbitration is preferred to a "fair" one for some common testbench purpose. What concerns me is the inconsistency here. If a "greedy" algorithm is preferable for some reason, then why is it abandoned in favor of a "fair" algorithm for processes that happen to have waited? Steven Sharp sharp@cadence.comReceived on Thu Sep 15 16:04:58 2005
This archive was generated by hypermail 2.1.8 : Thu Sep 15 2005 - 16:05:53 PDT