[gclist] working with 64 bit ints/pointers
Thu, 11 Dec 1997 20:52:06 -0800
On Dec 11, 1:00pm, Stuart Yeates wrote:
> Subject: RE: [gclist] working with 64 bit ints/pointers
> > Mike exagerates a bit here, bit just a bit. Theoretically
> > it is not precise, but practically speaking it is.
> There are three flaws in the argument:
> (a) things aren't uniformly distributed
Pointers can be for all intents and purposes, since the starting address of the
heap can be chosen to be a uniformly distributed random number. That's good
enough here, I think.
> (b) a pointer can be data too (consider especially programs such as
> debuggers/tracers where much data is pointers. Depending on the memory
> model in use, some pointers could be valid in both the client and the
> debuggers address space but point to separate copies of
That argument goes away if the heaps are in different parts of the address
space, as they would be nearly all the time if the starting address is random.
> (c) type-safe garbage collectors often make optimizations (i.e. no
> black-listing) that mean a single int/pointer confusion would have a
> more drastic effect than in a well designed conservative collector
True enough. But I'm not sure that the original claim was that you should
drop such techniques.