On Fri, May 23, 2014 at 10:26:54PM +0200, Stephan Eggermont wrote:
> David wrote:
> >In any case, the change affects one source file in the VM platform 
> >sources, so if you can arrange to get that included in the Pharo VM 
> >builds, that should provide a working VM that you can use for OSProcess on 
> >Pharo. 
> 
> I noticed that this is only a unix vm change. Should this be working
> already on Mac and Windows?
>

Definitely not for Windows.

I'm honestly not sure where we stand on Mac VMs. If the VM is based on the
unix platform sources, then it will work, otherwise probably not.

The specific feature that affects the OSProcess tests is the ability to
support #forkSqueak, which uses a Unix fork() mechanism to start an exact
copy of the running VM and image with very little memory overhead. This is
used in the OSProcess test suite in order to set up test cases that deal
with the interaction of two or more OS processes.

Think about what is required to ask the VM to pause for a moment, split
itself in two like an amoeba, and then have both of the VM instances start
running again as if nothing had happened. That means pausing and restarting
some signal handlers, pausing the connection to the X display so a new one
can be created for the second VM process, and restarting the various threads
that were running in the original VM. Most of this was already working for
Cog. Eliot came up with a way to restart the timer threads for Cog and
wonder of wonders, that was all it took to get #forkSqueak working on Cog.

Dave 

Reply via email to