[Vm-dev] Multiprocessing with Squeak

Jecel Assumpcao Jr jecel at merlintec.com
Sun Jan 31 20:31:42 UTC 2010


Levente Uzonyi wrote on Fri, 29 Jan 2010 22:43:30 +0100 (CET)
> Thanks for the pointer to the paper, I saw a video about it but I can't 
> find it atm.

David Ungar's 2008 Squeak BOF talk can be found at

http://goran.krampe.se/blog/OOPSLA/OOPSLA08-more.rdoc

I try to keep a reasonably up to date list of Smalltalk related movies
like these at

http://www.smalltalk.org.br/movies/

> My idea is much simpler than this and (ideally it) would work with current 
> images. What I'm interrested in is if it's doable or not? If it's 
> doable, how much work would it be to do it?

I had a similar suggestion for SqueakNOS. The way it is now, it is like
DOS in that any application can bring down the whole system. If you use
two images instead, one with access to the low level SqueakNOS stuff and
the second just running user level code then you would have something
closer to Unix in terms of security. Some primitives in the second image
(which could be an unmodified current one) would generate messages to
the first image with all the drivers and OS level code.

This isn't particularly original - in the "green book" there is a
description of the LOOM virtual memory system for Smalltalk that also
used two images to get the job done (chapter 14 - pages 251 to 271).

> > My plan is to work on this from late March to the end of June.
> 
> You mean you are about to reimplement that vm?

I'll post more details later this week on squeak-dev, but the basic idea
is to replace the ObjectMemory part of the VM and patch the message
passing so that images can reference each other's objects and send
messages between themselves. The same scheme is also used as a virtual
memory. allowing binary blobs to be loaded and unloaded on demand. The
goal is to be able to run well on machines with up to thousands of
cores. And to be usable by children.

This is very similar to David Ungar's work, but is not really based on
it and is more an evolution of some of my previous projects (I built a
64 node Self/Smalltalk computer in 1992 with 68020 processors and
Transputers though the software was only partly implemented, and I did
an extremely parallel version of Self in 1997).

-- Jecel



More information about the Vm-dev mailing list