[rvm-research] Question about MarkSweep, AllocAsMarked

Nathan Ricci <[email protected]>
Newsgroups gmane.comp.java.jikes.rvm.devel
Message-ID <CALh3YaNLq0xkgOSkOvVZQKbD19C=7MaUaRB_QJ=cHw=qctXNEQ@mail.gmail.com>
        I was looking through the code for MarkSweepSpace, and I noticed
there is a boolean "isAllocAsMarked" which can be set through the public
method makeAllocAsMarked.

       It seems like, if this boolean is false, objects are not marked when
they are allocated, instead having their GCHeaderByte set to something
called the "allocState" (which, if I am reading the code correctly, has the
value of the previous mark state).

      The default seems to be that isAllocAsMarked is false. But I can't
quite figure out how this is correct; how does the sweeper avoid sweeping
newly allocated (and still possibly live) objects if they do not have their
mark bits set on allocation?

            --Nathan

------------------------------------------------------------------------------
Managing the Performance of Cloud-Based Applications
Take advantage of what the Cloud has to offer - Avoid Common Pitfalls.
Read the Whitepaper.
http://pubads.g.doubleclick.net/gampad/clk?id=121051231&iu=/4140/ostg.clktrk

_______________________________________________
Jikesrvm-researchers mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/jikesrvm-researchers
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.