yet another smallest snapshot, and a visualization
tim at rowledge.org
Sat Jan 21 05:28:46 UTC 2006
On 20-Jan-06, at 5:53 PM, Andreas Raab wrote:
> Hi Craig -
>> When you run the 1337 snapshot, the virtual machine gets the
>> object address ("oop") for the special-objects array from the
>> snapshot header (first 60 bytes). Indirectly from that array
>> (through the Processor and its active process) it finds the active
>> context and continues execution.
> 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
tim Rowledge; tim at rowledge.org; http://www.rowledge.org/tim
Machine-independent: Does not run on any existing machine.
More information about the Squeak-dev