yet another smallest snapshot, and a visualization

Colin Putney cputney at wiresong.ca
Sat Jan 21 18:56:12 UTC 2006


On Jan 21, 2006, at 12:28 AM, tim Rowledge wrote:

>> This is interesting to me. Do you think it is feasable to take out  
>> all of the process management from the VM and put it back in, say,  
>> via a plugin?
> I think so. No need for the special objects array or Processor  
> instance if the saved context oop is either explicitly saved in the  
> image header or simply put somewhere by convention (like nil true  
> and false used to be) which would be trivial with Craig's version  
> of the tracer. You could start a copy of a VM for each process and  
> terminate it when the process concludes. This VM would need no  
> process handling stuff such as wakeHighestPriority but might need  
> some semaphore stuff?
> Debugging might be fun. Coordinating threads would have the  
> potential for getting to be as awful as java. On the other hand it  
> wold be an interesting way of making completely separated cells of  
> objects each running their own process and having to communicate  
> only via proper interfaces instead of messing in a global object  
> soup. All sorts of fun possibilities if one has the tim and funding

Indeed. The end result would be message-passing concurrency, rather  
than shared-state concurrency. Each VM instance would be a Vat/Island/ 
Task and you'd have distant object references for sending messages  
between them. VM instances could also be on a separate thread, in a  
separate process or on a separate machine, depending on what kind of  
performance characteristics you were looking for, pretty much  
transparently. Beautiful.



More information about the Squeak-dev mailing list