Re: [Pharo-dev] Coral is green

2014-05-24 Thread p...@highoctane.be
On Sat, May 24, 2014 at 1:29 AM, David T. Lewis  wrote:

> 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.
>

It would be terrific to have this working again smoothly on Linux. I am
using CentOS6.

>
> Dave
>
>


Re: [Pharo-dev] Coral is green

2014-05-23 Thread David T. Lewis
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 



Re: [Pharo-dev] Coral is green

2014-05-23 Thread Stephan Eggermont
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?

Stephan



Re: [Pharo-dev] Coral is green

2014-05-23 Thread Stephan Eggermont
Ok, I created a pull request on https://github.com/pharo-project/pharo-vm.
I guess there should be a way to use the diff directly, instead of editing the
file by hand.

Stephan


Re: [Pharo-dev] Coral is green

2014-05-23 Thread David T. Lewis
Hi Stephan,

The precompiled Cog VM would need to come from Eliot's site (or follow the
links to Eliot's site from http://squeakvm.org). The build.squeak.org job
is really just me testing the VMMaker code generation, it's not intended
as a source of VMs.

I tested Eliot's change and it works, but I think I was testing it with a
Cog VM that I compiled myself. So I'm not sure if the up to date
precompiled VM is available.

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.

Dave


> Thanks, David.
>
> Where do I find a precompiled cog vm with the changes to test with?
> (preferably mac,
> but linux will do). build.squeak.org doesn't seem to have a recent green
> build.
>
> Stephan





Re: [Pharo-dev] Coral is green

2014-05-23 Thread Stephan Eggermont
Thanks, David.

Where do I find a precompiled cog vm with the changes to test with? (preferably 
mac,
but linux will do). build.squeak.org doesn't seem to have a recent green build.

Stephan