[Vm-dev] Re: VM patches for oop comparison and usqInt declarations

John M McIntosh johnmci at smalltalkconsulting.com
Sat Jun 9 19:51:43 UTC 2007

David, in order to test this I changed

    debug = mmap( 2147483648U-512*1024*1024, gMaxHeapSize+pageSize

then asked for 600MB of squeak memory.
mmap allocated memory for me on the 2GB-512MB boundary, so I then had  
88 MB of space over the 2GB boundary. I could work towards.

I'd think if you look at sqUnixMemory.c and  fiddle a bit with

       if (MAP_FAILED == (heap= mmap(0, heapLimit, MAP_PROT,  
MAP_FLAGS, devZero, 0)))

you might be able to change the 0 to say.. .


Then ask for 600MB of memory for the image.

That would set the end of memory at 0x8000000015800000
344MB over the negative sign boundary.

Check heap then, it *might* say 0x7FFFFFFFF0000000 if it works as  
   I was able to use this to set the start at 1gb, 1.5gb, 2gb, 3gb on  
the mac in 32bit mode.

On Jun 9, 2007, at 8:08 AM, David T. Lewis wrote:

> Hi John,
> Thanks for the feedback. It's good that you've got a fairly repeatable
> failure scenario. When I did those changes, I was working on a 64 bit
> machine, and the Squeak heap gets allocated at e.g. 0x2b39e0c5a000, so
> I would not have been seeing the 2GB boundary on that machine. I guess
> I should go back to a 32 bit box and reproduce the problem there.
> I might not get a chance to look at this further for a couple of weeks
> though. Right now my pet project is to see if I can get Areithfa  
> Ffenestri
> working on unix.
> Dave

John M. McIntosh <johnmci at smalltalkconsulting.com>
Corporate Smalltalk Consulting Ltd.  http://www.smalltalkconsulting.com

More information about the Vm-dev mailing list