> The request completes once the lock is claimed by this call. Such a
> call would allow non-busy waiting for a lock, which is not possible
> with the current calls.
>
> Of course this may have implementation implications (like requiring
> a global queue of lock requests somewhere.)
**** Marc ****
> a global queue might be needed, anyhow, for the blocking lock call,
> if we want to be able to deschedule the blocked process.
The question is whether we need a queue which is global across the
processes. If we say anything about fairness we certainly will. As you
point out we probably already do just to handle the blocking call if
it is not to be implemented busily.
If we allow the non-blocking call (or want non-busy blocking), then we
likely do require a global queue in the window data structure. I.e. a
single queue for lock requests from all processes using the window.
This is not a trivial implementation exercise. (But then maybe we knew
that already !)
-- Jim
James Cownie
BBN UK Ltd
Phone : +44 117 9071438
E-Mail: jcownie@bbn.com