Re: Ranting about JVM's default memory limits...
On Sun, 3 Aug 2008, Mark Space wrote:
Tom Anderson wrote:
Indeed, i'm not sure how just moving the boundary pointer constitutes
garbage collection at all: you find your roots, you sweep the live objects,
you mark them, and then ... what? Do nothing with that information? Just
move live objects and garbage together into the next generation? How does
that collect any garbage?
I think what he's saying is that .NET just compacts the young generation
first, then moves the boundary pointer.
Ah, okay. That makes sense.
[snip nice diagrams]
Eventually you might need to compact tenured objects, but it's a cheap
way of getting them there.
If you're compacting the objects that survive the nursery, you're copying
each of them, so this is no cheaper than copying them all into an existing
older generation.
Mind you, i don't even know that that's what Sun's GC does.
tom
--
Imagine a city where graffiti wasn't illegal, a city where everybody
could draw wherever they liked. Where every street was awash with a
million colours and little phrases. Where standing at a bus stop was never
boring. A city that felt like a living breathing thing which belonged to
everybody, not just the estate agents and barons of big business. Imagine
a city like that and stop leaning against the wall - it's wet. -- Banksy