[Vm-dev] OSProcess in Cog

Rob Withers reefedjib at yahoo.com
Sun Jul 25 16:24:33 UTC 2010



--------------------------------------------------
From: "David T. Lewis" <lewis at mail.msen.com>
Sent: Sunday, July 25, 2010 11:58 AM
To: "Squeak Virtual Machine Development Discussion" 
<vm-dev at lists.squeakfoundation.org>
Cc: "Squeak Dev" <squeak-dev at lists.squeakfoundation.org>
Subject: Re: [Vm-dev] OSProcess in Cog

>
> On Sun, Jul 25, 2010 at 10:59:04AM -0400, Rob Withers wrote:
>>
>> I am trying to load and run OSProcess in Cog.  I loaded:
>>
>>    OSProcess-Base
>>    OSProcess-AIO
>>    OSProcess-Win32
>>    OSProcess-Unix
>>    OSProcess-Tests
>>
>> Then ran the tests.  Many failures.
>>
>> I looked at the vm and there is no ProcessPlugin or OSProcessPlugin.
>> Should there be?
>
> OSProcess will not work without the OSProcessPlugin. AFAIK no one has
> tried this yet (including me - sorry I've been quite busy lately).
>

What about the AIOPlugin?

>> What should I do?
>
> If you are compiling your own COG VM, then load OSProcessPlugin from
> SqueakSource and give it a try. But just to set expectations, I will
> be (pleasantly) surprised if it works the first time without 
> modifications,
> so consider it pre-alpha at this point.

I loaded the OSProcessPlugin package and generated sources under Windows.  I 
built using Cygwin.  It gave me a Win32OSProcessPlugin.dll.

I ran the tests.  It said I don't have the AIOPlugin so it was using polling 
(I think that is what it  said).  Tests failed in AioEventHandlerTestCase 
(failures) and OSPipeTestCase (errors).  Many OSPipeTestCase failures have 
to do with AttachableFileStream being closed.

I tried the following code and it failed because stdout was closed:

ThisOSProcess thisOSProcess openConsole.
ThisOSProcess thisOSProcess stdOut
	nextPutAll: ('error count: ',
		CryptoDESTest suite run errorCount asString);
	flush.

Which is what I need OSProcess for.

Another issue: I am trying to generate sources so I can move them from Win32 
to Unix and compile the vm there.  I cannot run VMMaker on linux - it is 
headless/no X.  I noticed that the OSProcessPlugin generates per platform, 
and in fact there is platform support code.  So under Windows, we generate a 
Win32OSProcessPlugin.  Under Unix I assume it generates a 
UnixOSProcessPlugin.  Is there any way I can generate a UnixOSProcessPlugin 
under Windows?

Many thanks,
Rob
>
> Dave
> 


More information about the Vm-dev mailing list