August 1998
- Affordances and social method (Was: Wired Jon A. Lambert
- (Fwd) **NOTICE REGARDING YOUR SEARCHLIGHT SOFTWARE** Jon A. Lambert
- (Fwd) **NOTICE REGARDING YOUR SEARCHLIGHT SOFTWARE** John Bertoglio
- (Fwd) **NOTICE REGARDING YOUR SEARCHLIGHT SOFTWARE** Caliban Tiresias Darklock
- OT: BBSs, s001gmu@nova.wright.edu
- Ansii color, needing some specs and or pointer Jon A. Lambert
- Ansii color, needing some specs and or pointer Caliban Tiresias Darklock
- (fwd) "Smart" monsters Nathan Fenenga Yospe
- Interesting poll Koster, Raph
- Interesting poll John Bertoglio
- Milgram experiment (was WIRED: Kilers have more fun) Mike Sellers
- Implementing god. quzah
- Implementing god. Adam J. Thornton
- Implementing god. J C Lawrence
- Implementing god. Adam J. Thornton
- Implementing god. Koster, Raph
- Implementing god. Adam J. Thornton
- Implementing god. Koster, Raph
- Implementing god. J C Lawrence
- Implementing god. Marian Griffith
- Implementing god. Adam J. Thornton
- Implementing god. Andy Cink
- Blender: free version J C Lawrence
- Blender: free version J C Lawrence
- Blender: free version Adam Wiggins
- UOL/Linux client URLs J C Lawrence
- Socket-Script: Socket-capabable script language and matching library J C Lawrence
- Socket-Script: Socket-capabable script language and matching library Adam J. Thornton
- Socket-Script: Socket-capabable script language and matching library Chris Gray
- Socket-Script: Socket-capabable script language and matching library Chris Gray
- Socket-Script: Socket-capabable script language and matching library Adam J. Thornton
- Socket-Script: Socket-capabable script language and matching library Nathan F Yospe
- Socket-Script: Socket-capabable script language and matching library Adam J. Thornton
- Socket-Script: Socket-capabable script language and matching library ##Make Nylander
- Socket-Script: Socket-capabable script language and matching library Adam J. Thornton
- Socket-Script: Socket-capabable script language and matching library Ola Fosheim Grøstad
- Why threading? (Was: Output Classification Notes) Ola Fosheim Grøstad
- Why threading? (Was: Output Classification Notes) J C Lawrence
- Secrets of the Game Designers s001gmu@nova.wright.edu
- 3D World Models Leach, Brad BA
- 3D World Models S. Patrick Gallaty
- Toba Java->C Adam J. Thornton
- [IDEAS] Starting from scratch Franklyn Colebrooke, Jr.
- [IDEAS] Starting from scratch Adam J. Thornton
- [IDEAS] Starting from scratch Hans-Henrik Staerfeldt
- [IDEAS] Starting from scratch Adam Wiggins
- [IDEAS] Starting from scratch Leach, Brad BA
- [IDEAS] Starting from scratch T. Alexander Popiel
- [IDEAS] Starting from scratch Adam Wiggins
- [IDEAS] Starting from scratch J C Lawrence
- [IDEAS] Starting from scratch Ross Nicoll
- [IDEAS] Starting from scratch T. Alexander Popiel
- [IDEAS] Starting from scratch Holly Sommer
- [IDEAS] Starting from scratch T. Alexander Popiel
- [IDEAS] Starting from scratch Nathan F Yospe
- [IDEAS] Starting from scratch Holly Sommer
- [IDEAS] Starting from scratch T. Alexander Popiel
- [IDEAS] Starting from scratch s001gmu@nova.wright.edu
- [IDEAS] Starting from scratch Matt Chatterley
- [IDEAS] Starting from scratch Ross Nicoll
- [IDEAS] Starting from scratch Ross Nicoll
- [IDEAS] Starting from scratch Ross Nicoll
- [IDEAS] Starting from scratch J C Lawrence
- [IDEAS] Starting from scratch J C Lawrence
- [IDEAS] Starting from scratch Adam Wiggins
- Question regarding Java threads Jon A. Lambert
- Question regarding Java threads Chris Gray
- Question regarding Java threads Vadim Tkachenko
- Question regarding Java threads Ben Greear
- Question regarding Java threads J C Lawrence
- Question regarding Java threads Ben Greear
- Question regarding Java threads Jon A. Lambert
- Question regarding Java threads Chris Gray
- Question regarding Java threads Matt Chatterley
- Question regarding Java threads Ben Greear
- Protocols Vadim Tkachenko
- Events s001gmu@nova.wright.edu
- after the plague: mud report S. Patrick Gallaty
- after the plague: mud report quzah
- after the plague: mud report Adam Wiggins
- after the plague: mud report Ling
- Object Storage Fact Book, Release 4.0 (fwd) Nathan F Yospe
- Affordances and social method (Was: Wire d Magazine...) J C Lawrence
- META: List combat character and racial memory (was Re: J C Lawrence
- META: List combat character and racial memory (was Re: kamikaze@kuoi.asui.uidaho.edu
- Black Isle's Baldur's Gate J C Lawrence
- Black Isle's Baldur's Gate Koster, Raph
- Black Isle's Baldur's Gate Chris Gray
- Black Isle's Baldur's Gate Koster, Raph
- 208.240.161.41 Adam J. Thornton
- 208.240.161.41 Vadim Tkachenko
- ADMIN: Advertising on MUD-Dev J C Lawrence
- ADMIN: Advertising on MUD-Dev Chris Gray
- ADMIN: Advertising on MUD-Dev Caliban Tiresias Darklock
- ADMIN: Advertising on MUD-Dev Ola Fosheim Grøstad
- ADMIN: Advertising on MUD-Dev J C Lawrence
- ADMIN: Advertising on MUD-Dev Vadim Tkachenko
- ADMIN: Advertising on MUD-Dev Adam Wiggins
- ADMIN: Advertising on MUD-Dev Robert Woods
- ADMIN: Advertising on MUD-Dev Richard Woolcock
- ADMIN: Advertising on MUD-Dev Jeroen Ruigrok/Asmodai
- ADMIN: Advertising on MUD-Dev quzah
- ADMIN: Advertising on MUD-Dev Richard Woolcock
- ADMIN: Advertising on MUD-Dev Jeroen Ruigrok/Asmodai
- ADMIN: Advertising on MUD-Dev T. Alexander Popiel
- ADMIN: Advertising on MUD-Dev Mike Sellers
- ADMIN: Advertising on MUD-Dev J C Lawrence
- ADMIN: Advertising on MUD-Dev Michael Hohensee
- ADMIN: Advertising on MUD-Dev s001gmu@nova.wright.edu
- ADMIN: Advertising on MUD-Dev J C Lawrence
- ADMIN: Advertising on MUD-Dev quzah
- ADMIN: Advertising on MUD-Dev John Bertoglio
- ADMIN: Advertising on MUD-Dev Caliban Tiresias Darklock
- ADMIN: Advertising on MUD-Dev quzah
- ADMIN: Advertising on MUD-Dev Caliban Tiresias Darklock
- ADMIN: Advertising on MUD-Dev s001gmu@nova.wright.edu
- ADMIN: Advertising on MUD-Dev Chris Gray
- ADMIN: Advertising on MUD-Dev Scatter
- ADMIN: Advertising on MUD-Dev J C Lawrence
- Adverts in email on the list. Ben Greear
- Adverts in email on the list. quzah
- Adverts in email on the list. Jon A. Lambert
- Adverts in email on the list. Holly Sommer
- Adverts in email on the list. Vadim Tkachenko
- Ethernet NICS, maximum connections..mud testing. Ben Greear
- Ethernet NICS, maximum connections..mud testing. Vadim Tkachenko
- Ethernet NICS, maximum connections..mud testing. Ben Greear
- Ethernet NICS, maximum connections..mud testing. Chris Gray
- lurker emerges James Wilson
- lurker emerges Chris Gray
- lurker emerges Adam J. Thornton
- lurker emerges Chris Gray
- lurker emerges Petri Virkkula
- lurker emerges T. Alexander Popiel
- lurker emerges James Wilson
- lurker emerges T. Alexander Popiel
- lurker emerges Vadim Tkachenko
- lurker emerges Ben Greear
- lurker emerges J C Lawrence
- lurker emerges T. Alexander Popiel
- lurker emerges Vadim Tkachenko
- lurker emerges T. Alexander Popiel
- lurker emerges Vadim Tkachenko
- lurker emerges T. Alexander Popiel
- lurker emerges Vadim Tkachenko
- lurker emerges T. Alexander Popiel
- lurker emerges Vadim Tkachenko
- lurker emerges Vadim Tkachenko
- lurker emerges Chris Gray
- lurker emerges Vadim Tkachenko
- lurker emerges J C Lawrence
- lurker emerges Petri Virkkula
- lurker emerges J C Lawrence
- lurker emerges Petri Virkkula
- lurker emerges Chris Gray
- lurker emerges J C Lawrence
- Adverts in email on the list. Chris Gray
- Fw: lurker emerges James Wilson
- Fw: lurker emerges T. Alexander Popiel
- Ethernet NICS, maximum connections..mud testing. Chris Gray
- Ethernet NICS, maximum connections..mud testing. Chris Gray
- Neat surrealistic graphical mudclients in Java? Ola Fosheim Grøstad
- Ethernet NICS, maximum connections..mud testing. Chris Gray
- Ethernet NICS, maximum connections..mud testing. J C Lawrence
- Ethernet NICS, maximum connections..mud testing. Adam J. Thornton
- Ethernet NICS, maximum connections..mud testing. Ben Greear
- META/ADMIN: ADMIN: Advertising on MUD-Dev Mike Sellers
- META/ADMIN: ADMIN: Advertising on MUD-Dev Ola Fosheim Grøstad
- Rule #3 S. Patrick Gallaty
- OT: Ethernet NICS, maximum connections..mud testing. Shawn Halpenny
- OT: Ethernet NICS, maximum connections..mud testing. Vadim Tkachenko
- META: List combat character and racial memory (was Re: Chris Gray
- List of rules suggestionbox Hans-Henrik Staerfeldt
- List of rules suggestionbox Caliban Tiresias Darklock
- async i/o and threads (was: lurker emerges) James Wilson
- async i/o and threads (was: lurker emerges Jon A. Lambert
- async i/o and threads (was: lurker emerges James Wilson
- async i/o and threads (was: lurker emerges Jon A. Lambert
- Amoeba: Distributed OS release J C Lawrence
- clients anyone?... Andrew Wilson
- clients anyone?... Adam J. Thornton
- clients anyone?... Andrew Wilson
- clients anyone?... Hans-Henrik Staerfeldt
- clients anyone?... Adam J. Thornton
- clients anyone?... Bruce Mitchener, Jr.
- clients anyone?... James Wilson
- clients anyone?... Adam J. Thornton
- clients anyone?... Andrew Wilson
- clients anyone?... Adam J. Thornton
- clients anyone?... Andrew Wilson
- clients anyone?... Adam J. Thornton
- clients anyone?... Adam Wiggins
- clients anyone?... Andrew Wilson
- clients anyone?... J C Lawrence
- clients anyone?... Andrew Wilson
- Re:Methods to Reduce Ecological Wipeout Michael.Willey@abnamro.com
- ADMIN: Over quoting (again) J C Lawrence
- JASSS: The Journal of Artificial Societies and Social Simulation J C Lawrence
- Methods to Reduce Ecological Wipeout Leach, Brad BA
- Methods to Reduce Ecological Wipeout s001gmu@nova.wright.edu
- Methods to Reduce Ecological Wipeout quzah
- Methods to Reduce Ecological Wipeout Michael.Willey@abnamro.com
- Methods to Reduce Ecological Wipeout Koster, Raph
- Methods to Reduce Ecological Wipeout Michael.Willey@abnamro.com
- Methods to Reduce Ecological Wipeout Koster, Raph
- Methods to Reduce Ecological Wipeout Brandon J. Rickman
- Methods to Reduce Ecological Wipeout quzah
- Methods to Reduce Ecological Wipeout Marian Griffith
- Methods to Reduce Ecological Wipeout Damion Schubert
- Methods to Reduce Ecological Wipeout J C Lawrence
- Methods to Reduce Ecological Wipeout J C Lawrence
- LinuxThreads and SIGUSR1 (Ref: [MUD-Dev]) Adam J. Thornton
- Eye movement. quzah
- Eye movement. James Wilson
- Eye movement. quzah
- Eye movement. S. Patrick Gallaty
- Eye movement. T. Alexander Popiel
- Eye movement. Hans-Henrik Staerfeldt
- OGR: Ion Storm's Witchboy talks about the functionality of enemy AI. J C Lawrence
- OGR: Ion Storm's Witchboy talks about the functionality of enemy AI. s001gmu@nova.wright.edu
- Methods to Reduce Ecological Wipeout (fwd) Marc Hernandez
- avoiding ecological wipeout Laurel Fan
- Passing file descriptors to other processes Adam J. Thornton
- Yet another update on threads and signals Adam J. Thornton
- Yet another update on threads and signals s001gmu@nova.wright.edu
- Yet another update on threads and signals Chris Gray
- Yet another update on threads and signals Adam J. Thornton
- Yet another update on threads and signals Chris Gray
- Yet another update on threads and signals Adam J. Thornton
- Yet another update on threads and signals Chris Gray
- Yet another update on threads and signals Adam J. Thornton
- OT: access s001gmu@nova.wright.edu
- Affordances and social method cat
- Affordances and social method cat
- Affordances and social method Caliban Tiresias Darklock
- Affordances and social method Ola Fosheim Grøstad
- Missing MUD-Dev post (fwd) Dr. Cat
- FW: UBE/high: W IRED: Kilers have more fun Koster, Raph
- Affordances and social method Koster, Raph
- Marian's Tailor Problem Koster, Raph
- Marian's Tailor Problem Brandon Cline
- Marian's Tailor Problem Hans-Henrik Staerfeldt
- Marian's Tailor Problem Brandon Cline
- Marian's Tailor Problem Ola Fosheim Grøstad
- Marian's Tailor Problem Damion Schubert
- Marian's Tailor Problem Chris Gray
- UBE/high: W IRED: Kilers have more fun Koster, Raph
- UBE/high: W IRED: Kilers have more fun Mike Sellers
- UBE/high: W IRED: Kilers have more fun s001gmu@nova.wright.edu
- UBE/high: W IRED: Kilers have more fun Marian Griffith
- Question for the list (Semi-OT) Nathan F Yospe
- Question for the list (Semi-OT) Oliver Jowett
- Question for the list (Semi-OT) Jon Leonard
- Question for the list (Semi-OT) Ben Greear
- FW: UBE/high: W IRED: Kilers have more fun Jon A. Lambert
- Private Affordances and social method Mike Sellers
- Private Affordances and social method Marian Griffith
- Private Affordances and social method Mike Sellers
- FW: UBE/high: W IRED: Kilers have more fun Marian Griffith
- UBE/high: FW: UBE/high: W IRED: Kilers have more fun Dr. Cat
- UBE/high: FW: UBE/high: W IRED: Kilers have more fun S. Patrick Gallaty
- free XML Parser (was clients anyone?...) James Wilson
- UBE/high: FW: UBE/high: W IRED: Kilers Jon A. Lambert
- UBE/high: FW: UBE/high: W IRED: Kilers Koster, Raph
- UBE/high: FW: UBE/high: W IRED: Kilers S. Patrick Gallaty
- UBE/high: FW: UBE/high: W IRED: Kilers quzah
- UBE/high: FW: UBE/high: W IRED: Kilers James Wilson
- UBE/high: FW: UBE/high: W IRED: Kilers Damion Schubert
- UBE/high: FW: UBE/high: W IRED: Kilers J C Lawrence
- UBE/high: UBE/high: FW: UBE/high: W IRED: Kilers Dr. Cat
- Marion's Tailor Problem s001gmu@nova.wright.edu
- Marion's Tailor Problem Caliban Tiresias Darklock
- Marion's Tailor Problem jwilson@rochester.rr.com
- Marion's Tailor Problem Travis Casey
- Marion's Tailor Problem Caliban Tiresias Darklock
- Marion's Tailor Problem Adam J. Thornton
- Marion's Tailor Problem Travis S. Casey
- Marion's Tailor Problem Jynx {Wyrm / Tygr / Myth} Ryn
- Marion's Tailor Problem s001gmu@nova.wright.edu
- Marion's Tailor Problem Damion Schubert
- Marion's Tailor Problem Damion Schubert
- Marion's Tailor Problem Ola Fosheim Grøstad
- Marion's Tailor Problem Adam Wiggins
- Marion's Tailor Problem quzah
- Marion's Tailor Problem Marian Griffith
- Marion's Tailor Problem J C Lawrence
- Marion's Tailor Problem Marian Griffith
- Marion's Tailor Problem Koster, Raph
- Marion's Tailor Problem Matthew R. Sheahan
- Marion's Tailor Problem quzah
- Marion's Tailor Problem Matthew R. Sheahan
- Marion's Tailor Problem Koster, Raph
- Marion's Tailor Problem Marian Griffith
- Marion's Tailor Problem Ola Fosheim Grøstad
- Marion's Tailor Problem J C Lawrence
- Marion's Tailor Problem Ola Fosheim Grøstad
- Marion's Tailor Problem Marian Griffith
- Slightly-OT: RPG Mapping Tool Holly Sommer
- UBE/high: UBE/high: FW: UBE/high: W IRED: Kilers Dr. Cat
- UBE/high: FW: UBE/high: W IRED: Kilers Scatter
- UBE/high: FW: UBE/high: W IRED: Kilers Marian Griffith
- UBE/high: FW: UBE/high: W IRED: Kilers Scatter
- UBE/high: FW: UBE/high: W IRED: Kilers Brandon J. Rickman
- UBE/high: FW: UBE/high: W IRED: Kilers Damion Schubert
- UBE/high: FW: UBE/high: W IRED: Kilers quzah
- UBE/high: FW: UBE/high: W IRED: Kilers Marian Griffith
- UBE/high: FW: UBE/high: W IRED: Kilers Adam Wiggins
- UBE/high: FW: UBE/high: W IRED: Kilers Travis Casey
- UBE/high: FW: UBE/high: W IRED: Kilers Brandon J. Rickman
- UBE/high: FW: UBE/high: W IRED: Kilers Koster, Raph
- Thoughts on Marian's Tailor Problem s001gmu@nova.wright.edu
- Standard Mud Room Format? plateau
- Standard Mud Room Format? T. Alexander Popiel
- Standard Mud Room Format? Michael.Willey@abnamro.com
- Standard Mud Room Format? J C Lawrence
- Standard Mud Room Format? Adam J. Thornton
- Standard Mud Room Format? Holly Sommer
- Standard Mud Room Format? Matthew R. Sheahan
- Standard Mud Room Format? Hans-Henrik Staerfeldt
- Standard Mud Room Format? Scatter
- Tangent to the Tailor Marc Bowden
- PerLDAP, usefull for your perl-mud? quzah
- UBE/high: Affordances and social method Dr. Cat
- UBE/high: FW: UBE/high: W IRED: Kilers have more fun Dr. Cat
- Article: A Summary of Principles for User-Interface Design. J C Lawrence
- Article: A Summary of Principles for User-Interface Design. Adam J. Thornton
- Article: A Summary of Principles for User-Interface Design. Ola Fosheim Grøstad
- Sockets permanently in CLOSE_WAIT state. (fwd) Oliver Jowett
- Fw: BlackSquad Releases File Formats Damion Schubert
- Revenants (Marion's Tailor Problem) Damion Schubert
- Finer points of Telnet programming ... Jynx {Wyrm / Tygr / Myth} Ryn
- Finer points of Telnet programming ... quzah
- Finer points of Telnet programming ... J C Lawrence
- Finer points of Telnet programming ... quzah
- Finer points of Telnet programming ... J C Lawrence
- Finer points of Telnet programming ... Marc Hernandez
- Finer points of Telnet programming ... Ben Greear
- Finer points of Telnet programming ... Greg Munt
- Finer points of Telnet programming ... Ben Greear
- Finer points of Telnet programming ... Jynx {Wyrm / Tygr / Myth} Ryn
- Finer points of Telnet programming ... Caliban Tiresias Darklock
- Finer points of Telnet programming ... Adam Wiggins
- Finer points of Telnet programming ... Caliban Tiresias Darklock
- Finer points of Telnet programming ... quzah
- Finer points of Telnet programming ... Greg Munt
- [off-topic] Email Jeroen Ruigrok/Asmodai
- Minimal MUD-kernel (was Finer points of Telnet programming ...) Niklas Elmqvist
- Modular MUD [Was:Finer points of Telnet programming ...] Jynx {Wyrm / Tygr / Myth} Ryn
- Modular MUD [Was:Finer points of Telnet programming ...] Caliban Tiresias Darklock
- Modular MUD [Was:Finer points of Telnet programming ...] Adam J. Thornton
- Modular MUD [Was:Finer points of Telnet programming ...] Caliban Tiresias Darklock
- Modular MUD [Was:Finer points of Telnet programming ...] Adam J. Thornton
- Modular MUD [Was:Finer points of Telnet programming ...] Caliban Tiresias Darklock
- Modular MUD [Was:Finer points of Telnet programming ...] pomales
- Modular MUD [Was:Finer points of Telnet programming ...] Caliban Tiresias Darklock
- Modular MUD [Was:Finer points of Telnet programming ...] Caliban Tiresias Darklock
- Modular MUD [Was:Finer points of Telnet programming ...] Jeroen Ruigrok/Asmodai
- Modular MUD [Was:Finer points of Telnet programming ...] Jynx {Wyrm / Tygr / Myth} Ryn
- Modular MUD [Was:Finer points of Telnet programming ...] Caliban Tiresias Darklock
- Modular MUD Caliban Tiresias Darklock
- Modular MUD Ola Fosheim Grøstad
- Modular MUD Caliban Tiresias Darklock
- Modular MUD Jeroen Ruigrok/Asmodai
- Modular MUD D. B. Brown
- Modular MUD quzah
- Modular MUD Caliban Tiresias Darklock
- Modular MUD Adam J. Thornton
- Modular MUD Caliban Tiresias Darklock
- Modular MUD Adam J. Thornton
- Modular MUD quzah
- Modular MUD J C Lawrence
- Modular MUD Adam J. Thornton
- Modular MUD Bruce Mitchener, Jr.
- Modular MUD Holly Sommer
- Modular MUD Adam J. Thornton
- Modular MUD Caliban Tiresias Darklock
- Modular MUD Vadim Tkachenko
- Modular MUD John Bertoglio
- Modular MUD [Was:Finer points of Telnet progra Jon A. Lambert
- OS Wars [Was: Modular MUD] Jynx {Wyrm / Tygr / Myth} Ryn
- Modular MUD [Was:Finer points of Telnet progra Jon A. Lambert
- Modular MUD [Was:Finer points of Telnet programming ...] Chris Gray
- The 'consider' command Richard Woolcock
- The 'consider' command Damion Schubert
- The 'consider' command Jon Leonard
- The 'consider' command Hans-Henrik Staerfeldt
- Scripting:was Modular Mud Jon A. Lambert
- Quake 3: How to do OpenGL J C Lawrence
- lockless system - foolproof? James Wilson
- lockless system - foolproof? Chris Gray
- lockless system - foolproof? J C Lawrence
- lockless system - foolproof? James Wilson
On Sun, 30 Aug 1998, Chris Gray wrote:
>[James Wilson:]
>
> >Assuming this solution (please let me know if there are any other solutions),
> >the possibility arises of having to collect a large number of such database
> >commits due to some operation on a complex compound object, where guaranteeing
> >the atomicity of access to subobjects is not sufficient. Then a thread which
> >tries to grab all the objects in question, operate upon them in such a way that
> >the overall constraints are satisfied, and save the changes, would be
> >vulnerable to frequent, possibly endless restarts as one or another of the many
> >objects it is trying to keep coherent is changed.
>I certainly don't want to speak for JC, but here's my understanding...
[snip]
>There could be lots of retries needed on busy objects. I believe some of the
>suggested solutions involved the scheduling of events, with the final
>attempt that of running the contentious (hah!) event all by itself,
>with nothing else running.
yes, contentious is a good word for it. the last clause would of course result
in complete system-wide stoppage while the contentious event is processed.
This is much stronger than is actually needed; all that is required for
correctness is that events which would collide are not run concurrently.
Suppose that I have constrained my user scripts so they can only access
some finite set of persistent objects within a given event, and that set can
be determined before the event is actually invoked . For instance, if an
event requires access to at most ten persistent objects, those ten
can be locked before the event is invoked. One could also distinguish
between read-only and read-write access to allow shared access
where appropriate.
Leaving aside for a moment the question of whether or not such a set
can be determined automatically (or what mud language structures would
be required to support that sort of analysis), would it help?
In the case of the nodes A and B which mutually reference one another, the
event which breaks the cycle would be flagged as needing two objects, A
and B, and would lock both of them. If other events are already manipulating
A or B, the event will be stalled until they're done. Similarly, events that
need to access A or B stall until the cycle-breaker is done.
If events can nest (i.e. event 1 starts event 2 and does not complete until
event 2 completes) then this system would be subject to deadlock, as
event E could lock A, event F could lock B, and each could then nest by
invoking one another. So the above is incompatible with nested events.
One would be forced to make all events asynchronous, so event E's
spawning of event F would not result in the execution of F *within* E, but
rather the execution of F sometime after its spawning. This is a significant
restriction.
Another problem has to do with obtaining the set of objects a given event
wants to operate upon. If these are fixed (event E always operates on object A)
there is no problem, but presumably one would like to allocate new objects
at runtime and invoke events which manipulate them. In this case, there
could be some computation done before an event is invoked which determines
the 'working set'. Consider the case where an event is to manipulate a linked
list, where each node in the list must be locked while the event is in
progress. There must be a point at which the linked list is traversed and the
objects in question locked; thus, one must protect THIS segment from deadlock
as well! Otherwise two threads could start at different ends of the list and
try to lock each node in it; they could each get halfway and freeze, waiting
for the other to relinquish the locks on the half they don't have... Mutexing
the procedure which obtains the locks could be a solution, so only one thread
is locking objects at any given time, but this could be a serious bottleneck
(as waiting for a previously locked object would block the invocation of new
events).
Alternatively, the set of objects accessible to the event could be passed when
the event is pushed on the event stack. Thus if event E has access to object A
which points to objects B and C, E can push a new event F which will manipulate
B and C simultaneously. Manipulating an entire list could be accomplished by
an event E obtaining access to A, spawning F which has access to A and B,
spawning G which has access to A, B, and C, etc... unwieldy indeed.
James
- lockless system - foolproof? J C Lawrence
- lockless system - foolproof? James Wilson
- lockless system - foolproof? J C Lawrence
- lockless system - foolproof? T. Alexander Popiel
- lockless system - foolproof? J C Lawrence
- lockless system - foolproof? T. Alexander Popiel
- lockless system - foolproof? J C Lawrence
- lockless system - foolproof? James Wilson
- lockless system - foolproof? J C Lawrence
- Admin: OS wars and avocacy are off-topic J C Lawrence