[Vm-dev] Problems involving cogvm and Unix OSProcessPlugin OSProcess PipeableOSProcess

David T. Lewis lewis at mail.msen.com
Sat Sep 4 14:20:20 UTC 2010


I think that you have confirmed that #forkSqueak does not work on a Cog VM.
The likely reason for this is that #forkSqueak involves temporarily disabling
timer signals from the operating system, then reenabling them in both the
child and parent after the fork(). The Cog VM is using a different underlying
timer mechanism (pthreads etc) so the current #forkSqueak mechanism would
probably need to be redone for Cog. I have not looked in to this at all,
but I did expect that this might be a problem and I think you have confirmed
it in the log below.

Dave

On Fri, Sep 03, 2010 at 09:52:29AM -0300, Casimiro de Almeida Barreto wrote:
>  
>  Here's the log:
> 
> Untrustedir /home/casimiro/Desenvolvimento/cog.work/secure
> UnixOSPrReceiversessionIdentvaria DependentsArray(a UnixProcess with pid
> 3490)
> fier:     #[202 58grimReaper: siona Process in [] in [] in
> UnixOSProcessAccessor>>
> grimReaperProcessigChldSemaphore:     a Semaphore(a Process in [] in []
> in Uni
> UnixOSPrReceiversessionIdentifier: epend#[202 58 13 UnixProcess with pid
> 3490)
> 6]          grimReaper: sio a Process in [] in [] in UnixOSProcessAccessor>>
> grimReaperProcessigChldSemaphore:     a Semaphore(a Process in [] in []
> in Uni
> UnixOSPrReceivercanObtainSessionIdenpend#[202 58 13 86]xProcess with pid
> 3490)
> ifierFromPlugin:grimReaper:     a Process in [] in [] in
> UnixOSProcessAccessor>>
> grimReaperProcessigChldSemaphore:     a Semaphore(a Process in [] in []
> in Uni
> UnixOSPrReceiversessionIdentifier: epend#[2sArray(a UnixProcess with pid
> 3490)
> 2 58 13 86]     grimReaper: siona Process in [] in [] in
> UnixOSProcessAccessor>>
> grimReaperProcessigChldSemaphore:     a Semaphore(a Process in [] in []
> in Uni
> UnixProcess>>redirect:to:- - - - - - - - - - - - - - - - - - - - -
> [] in PipeableOSProcess
> class>>forkSqueakAndDoThenQuit:errorPipelineStream:headl
> Compiler>>evaluate:in:to:notifyiningTo:toPrecision:maxEpochs:reportingEach:ss:
> PluggableTextMorphPlus(PluggableTextMorph)>>handleEdit:
> MorphicEventh(Morph)>>handleEvent:nt:ndTo:
> [] in HandMhandleFocusEvent:nt:using::with:h:
> ...etc...>>handleEvent:nt::clear:r:ing:
> 
> 
> BTW, XDisplayControlPlugin explodes cogvm at my face... but seems to be
> required by TranscriptStream (trying to figure out what's  going on
> there... then I'll report the problem properly).
> 





More information about the Vm-dev mailing list