Menu

#153 bug fixes and a new GC

open
nobody
None
5
2012-09-21
2010-05-02
Da Feng
No
  1. hashcode-bug.patch contains hash-code extraction and status change bug fix
  2. generational mark swap garbage collector. this works similar to generational mark compact. but to overcome difficulties of implementing getNextObject, it stores object start ref at the back end of heap, grows towards start of heap.

Discussion

  • Da Feng

    Da Feng - 2010-05-02

    hashcode-bug.patch

     
  • Da Feng

    Da Feng - 2010-05-02

    generational markswap

     
  • Da Feng

    Da Feng - 2010-05-02

    contributor agreement

     
  • Da Feng

    Da Feng - 2010-05-02

    pre-commit test

     
  • Da Feng

    Da Feng - 2010-05-02

    Actually the mentioned "back end of heap" should be stated as "back end of region". This algorithm will count the live objects during marking phase, sort the region list, and make use of one temporary region to do swapping. In calculate forward pointer phase, a destination pointer will be stored into gc header of object, and in swap phase objects will be moved into destination address. Both forwarding and swapping are done by iterating the stored object start reference at the end of each region. Since there are reference type processing between the two phase, some arrays and object must be allocated into non-moving space.

     

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.