[VM][ENH] LowSpaceAndInterruptHandler-dtl

Andreas Raab andreas.raab at gmx.de
Mon Apr 4 16:50:13 UTC 2005


Hi David -

Thanks for the code but let's not get too fast with this - I am still 
trying to understand why you could make the crash happen reliably... in 
some ways this doesn't make sense (since the failure should be triggered 
statistically) and I'd rather see that we either have situations in 
which we do not fail or that we understand why exactly we can repeat 
this behavior with 100% reliability (my explanation does not explain that).


Cheers,
   - Andreas

David T. Lewis wrote:
> These change sets are updates to the VM and to the low space watcher that
> fix low space interrupt handling and user interrupt handling in Morphic.
> 
> Under certain conditions the low space watcher was unable to determine the
> correct process to suspend following a low space signal. These changes permit
> the VM to remember the identity of the process that caused the low space
> condition, and to report it to the image through a primitive.
> 
> The low space watcher changes are backward compatible for use with VMs
> that do not yet have the new primitive (i.e. broken the same way as was
> the case in Squeak 3.7).
> 
> Caveats:
> - This is done with VMMaker 3-8b2, hence is not updated for 64 bit VM.
> - I added a numbered primitive, which is probably a bad thing (but I'm not
>   sure where best to put it, possibly MiscPrimitivePlugin?).
> - There may be a simpler way to accomplish this, but at least this is a
>   working implementation.
> - I have not tested the interpreter simulator, still need to make sure I did
>   not break it.
> 
> Cross posted to vm-dev and squeak-dev. Follow-ups should go to vm-dev
> (unless someone can think of a way to handle this properly without
> touching the VM).
> 
> Dave
> 



More information about the Squeak-dev mailing list