[squeak-dev] 64Bit image on Squeak Cocoa 5.7.4 VM

David T. Lewis lewis at mail.msen.com
Mon Apr 18 14:45:56 UTC 2011


On Mon, Apr 18, 2011 at 12:45:51PM +0200, Tobias Pape wrote:
> 
> Am 2011-04-13 um 23:52 schrieb Tobias Pape:?
> ?
> > 
> > Ok, so it was a misunderstanding of the
> >> ?Squeak VM Host 64/32bits?
> > tag line.
> > 
> >> The image that you traced will now be a 64 bit image, which
> >> means that all of the "slots" in the object memory are 64 bits
> >> in size, as opposed to the normal 32 bit words and OOPs used
> >> in a 32 bit image. What you are looking for now is a VM that
> >> understands that object memory format. (As a side note, it
> >> is entirely possible to compile that VM in 32 bit mode and
> >> still have it interpret the 64 bit image, although I would
> >> expect that anyone working with a 64 bit image is going to
> >> prefer the 64 bit VM for its effectively unlimited address
> >> space.)
> > 
> > That is, the word size in an Image can differ from the VM
> > pointer size?
> 
> Can somebody me enlighten me on this?
> How shall a VM be 32bit word- but 
> 64bit pointer-size?
> Is there any documentation on this?

Think of the VM as a program, just like any other program. And
think of the object memory as a bunch of data, either arranged
as an array of 32-bit values or an array of 64-bit values. It
does not matter if you compile your program with 32-bit pointers
(-m32) or 64-bit pointers (-m64), in either case your program
can still access its data.

Sounds like magic, but that's all there is to it :)

Dave




More information about the Squeak-dev mailing list