What Is FFI

Raab, Andreas Andreas.Raab at disney.com
Mon Feb 7 23:39:08 UTC 2000


> Gruess Gott!  This sounds very cool.  I had a thought though. 
> Why don't we split the job between 2 VMs, with some shared 
> memory, and let theother VM be the one that crashes.  
> Be able to detect and log it, and restart another VM.  
> Flag that call as disabled and keep going?  

Interesting idea. There are a couple of problems with it though. The biggest
problem is that Squeaks object memory can be corrupted by calls to external
functions. There is no way to check this and the effect is not immediate
(e.g., usually the system will crash at the next garbage collection and this
may be *way* after you've actually done the bad stuff). Thus, you would
basically need to clone the entire image for each call (ouch) until you know
it's in a stable state again. And not only the image - it can be similarily
bad if you corrupt any VM state so you'd basically have to clone the entire
process (e.g., VM+image). A little too much work just for calling some
function ;-)

  Andreas





More information about the Squeak-dev mailing list