[vm] Large Frame size

Hans-Martin Mosner hmm at heeg.de
Wed Oct 24 05:47:27 UTC 2007


Rob Withers schrieb:
>
> ----- Original Message ----- From: "Rob Withers" <reefedjib at yahoo.com>
>
>> I think I'll work on defining a frame size of 80, as a nice round
>> number.
>
> I just read the following comment in ObjectMemory
> class>>#initializeWithBytesToWord:
>
> "Large contexts have 56 indexable fileds.  Max with single header word."
>
> Could someone explain what this is all about?  What is it about a
> single header word that limits it?
>
> thanks,
> Rob
>
>
The single header word includes a size field which encodes for a maximum
of 63 oop slots, of which one is the header word itself, 6 are instance
variables, leaving 56 indexable slots.
Larger contexts would need a second and third header field to hold the
object size. The comment to which you're referring indicates that in 64
bit images, the context objects would need 3 header words, so it seems
the VM should be able to handle it (however, I don't know whether it
handles the mixture of 1 word headers for small contexts and 3 words for
large contexts.)

Cheers,
Hans-Martin



More information about the Squeak-dev mailing list