Multiple disjoint object memory in Smalltalk

Noel J. Bergman noel at devtech.com
Tue May 29 04:32:20 UTC 2001


> I note that on some versions of mmap you can speicify a starting
> address. Therefore if it works you could avoid having to swizzle the
> pointers when you access the image since they would never change.
> Otherwise you are back to updating all the object slots at load time.

The method ObjectMemory>>adjustAllOopsBy in my image was last updated by
you, I believe (JMM 11/18/2000 17:50).  A comment in it says, "Note: Don't
bypass this method even if bytesToShift is zero until the RootBit problem
has been fixed in the appropriate places", and the code to shortcut the
method when bytesToShift = 0 is commented out.  I don't see anything new in
my .changes file, so I am assuming the comment is current.

I don't know what the RootBit problem is, but the section of code that would
be bypassed if the comment were removed is the code that adjusts all of the
references, and also clears the RootBit for each object.  So if the comment
is still correct, then even if the image reloads at the same place, don't
you need to still clear each object's RootBit?  Or did I misunderstand your
point, above?

	--- Noel





More information about the Squeak-dev mailing list