[BACK]Return to README CVS log [TXT][DIR] Up to [local] / OpenXM_contrib2 / asir2000 / gc

Diff for /OpenXM_contrib2/asir2000/gc/Attic/README between version 1.1.1.1 and 1.2

version 1.1.1.1, 1999/12/03 07:39:09 version 1.2, 2000/04/10 08:31:30
Line 1 
Line 1 
 Copyright 1988, 1989 Hans-J. Boehm, Alan J. Demers  Copyright 1988, 1989 Hans-J. Boehm, Alan J. Demers
 Copyright (c) 1991-1996 by Xerox Corporation.  All rights reserved.  Copyright (c) 1991-1996 by Xerox Corporation.  All rights reserved.
 Copyright (c) 1996-1998 by Silicon Graphics.  All rights reserved.  Copyright (c) 1996-1999 by Silicon Graphics.  All rights reserved.
   Copyright (c) 1999 by Hewlett-Packard Company. All rights reserved.
   
 THIS MATERIAL IS PROVIDED AS IS, WITH ABSOLUTELY NO WARRANTY EXPRESSED  THIS MATERIAL IS PROVIDED AS IS, WITH ABSOLUTELY NO WARRANTY EXPRESSED
 OR IMPLIED.  ANY USE IS AT YOUR OWN RISK.  OR IMPLIED.  ANY USE IS AT YOUR OWN RISK.
Line 11  Permission to modify the code and to distribute modifi
Line 12  Permission to modify the code and to distribute modifi
 provided the above notices are retained, and a notice that the code was  provided the above notices are retained, and a notice that the code was
 modified is included with the above copyright notice.  modified is included with the above copyright notice.
   
 This is version 5.0alpha2 of a conservative garbage collector for C and C++.  This is version 5.0alpha4 of a conservative garbage collector for C and C++.
   
 You might find a more recent version of this at  You might find a more recent version of this at
   
 http://reality.sgi.com/boehm/gc.html  http://www.hpl.hp.com/personal/Hans_Boehm/gc
   
 HISTORY -  HISTORY -
   
   Early versions of this collector were developed as a part of research    Early versions of this collector were developed as a part of research
 projects supported in part by the National Science Foundation  projects supported in part by the National Science Foundation
 and the Defense Advance Research Projects Agency.  and the Defense Advance Research Projects Agency.
 Much of the code was rewritten by Hans-J. Boehm at Xerox PARC  Much of the code was rewritten by Hans-J. Boehm (boehm@acm.org) at Xerox PARC
 and is now maintained by him at SGI (boehm@sgi.com or boehm@acm.org).  and at SGI.
   
 Some other contributors:  Some other contributors:
   
Line 1485  Since 4.14
Line 1486  Since 4.14
   
 Since 5.0alpha1  Since 5.0alpha1
  - Fixed bugs introduced in alpha1 (OpenBSD & large block initialization).   - Fixed bugs introduced in alpha1 (OpenBSD & large block initialization).
   
  - Added -DKEEP_BACK_PTRS and backptr.h interface.  (The implementation   - Added -DKEEP_BACK_PTRS and backptr.h interface.  (The implementation
    idea came from Al Demers.)     idea came from Al Demers.)
   
   Since 5.0alpha2
    - Added some highly incomplete code to support a copied young generation.
      Comments on nursery.h are appreciated.
    - Changed -DFIND_LEAK, -DJAVA_FINALIZATION, and -DFINALIZE_ON_DEMAND,
      so the same effect could be obtained with a runtime switch.   This is
      a step towards standardizing on a single dynamic GC library.
    - Significantly changed the way leak detection is handled, as a consequence
      of the above.
   
   Since 5.0 alpha3
    - Added protection fault handling patch for Linux/M68K from Fergus
      Henderson and Roman Hodek.
    - Removed the tests for SGI_SOURCE in new_gc_alloc.h.  This was causing that
      interface to fail on nonSGI platforms.
    - Changed the Linux stack finding code to use /proc, after chnging it
      to use HEURISTIC1.  (Thanks to David Mossberger for pointing out the
      /proc hook.)
    - Added HP/UX incremental GC support and HP/UX 11 thread support.
    - Added basic Linux/IA64 support.
    - Integrated Anthony Green's PicoJava support.
    - Integrated Scott Ananian's StrongARM/NetBSD support.
    - Fixed some fairly serious performance bugs in the incremental
      collector.  These have probably been there essentially forever.
      (Mark bits were sometimes set before scanning dirty pages.
      The reclaim phase unnecessarily dirtied full small object pages.)
    - Changed the reclaim phase to ignore nearly full pages to avoid
      touching them.
    - Limited GC_black_list_spacing to roughly the heap growth increment.
    - Changed full collection triggering heuristic to decrease full GC
      frequency by default, but to explicitly trigger full GCs during
      heap growth.  This doesn't always improve things, but on average it's
      probably a win.
    - GC_debug_free(0, ...) failed.  Thanks to Fergus Henderson for the
      bug report and fix.
   
 To do:  To do:
  - Very large root set sizes (> 16 MB or so) could cause the collector   - Very large root set sizes (> 16 MB or so) could cause the collector
    to abort with an unexpected mark stack overflow.  (Thanks again to     to abort with an unexpected mark stack overflow.  (Thanks again to
Line 1502  To do:
Line 1537  To do:
    be possible to conditionally intercept mmap and use GC_exclude_static_roots.     be possible to conditionally intercept mmap and use GC_exclude_static_roots.
    The real fix is to walk rld data structures, which looks possible.     The real fix is to walk rld data structures, which looks possible.
  - Integrate MIT and DEC pthreads ports.   - Integrate MIT and DEC pthreads ports.
  - Deal with very uneven black-listing distributions.  If all the black listed   - Incremental collector should handle large objects better.  Currently,
    blocks reside in the newly allocated heap section, the heuristic for     it looks like the whole object is treated as dirty if any part of it
    temporarily ignoring black-listing fails, and the heap grows too much.     is.
    (This was observed in only one case, and could be worked around, but ...)  
  - Some platform specific updates are waiting for 4.15alpha1.  

Legend:
Removed from v.1.1.1.1  
changed lines
  Added in v.1.2

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>