Changeset 4bde6b in git for ppcc


Ignore:
Timestamp:
May 15, 2020, 3:20:00 PM (4 years ago)
Author:
Hans Schoenemann <hannes@…>
Branches:
(u'fieker-DuVal', '117eb8c30fc9e991c4decca4832b1d19036c4c65')(u'spielwiese', 'c5facdfddea2addfd91babd8b9019161dea4b695')
Children:
a1b40ab8675488c2a4f8e225d9d748ba70340727
Parents:
538e06d0809adf9f75fea000cf70d354bb674ab5
Message:
spelling p1
Location:
ppcc/gclib
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • ppcc/gclib/README

    r538e06 r4bde6b  
    5555malloc());
    5656- objects finalization and memory recycling (reclaiming to the
    57 underlaying malloc implementation) is done lazily (between
     57underlying malloc implementation) is done lazily (between
    5858collections).
    5959
     
    6666- small initial internal data size;
    6767- less source code (to verify);
    68 - minimal set of the underlaying clib/pthread/Win32 functions used.
     68- minimal set of the underlying clib/pthread/Win32 functions used.
    6969
    7070The drawbacks of TinyGC are:
     
    8181blacklisting, memory unmapping, thread-local allocation, parallel
    8282marking, generation and incremental collections);
    83 - relies on the underlaying malloc/free() implementation (which may be
     83- relies on the underlying malloc/free() implementation (which may be
    8484broken for large heaps, like, e.g., in some versions of msvcrt);
    8585- "all-interior-pointers" mode is limited by the offset of 256
     
    104104symbols are not visible outside);
    105105- both pthreads and Win32 threads are supported;
    106 - no thread-safety of the underlaying malloc/free is required;
     106- no thread-safety of the underlying malloc/free is required;
    107107- the stack direction is detected at TinyGC initialization;
    108108- no warnings are printed;
     
    112112- CPU state is saved by setjmp();
    113113- there is no object "header" (i.e. the original object size is passed
    114 to the underlaying malloc()).
     114to the underlying malloc()).
    115115
    116116Usage notes:
  • ppcc/gclib/htdocs/index.html

    r538e06 r4bde6b  
    178178<LI>malloc-based allocation (i.e. every object is allocated using
    179179<CODE>malloc()</CODE>);
    180 <LI>objects finalization and memory recycling (reclaiming to the underlaying
     180<LI>objects finalization and memory recycling (reclaiming to the underlying
    181181malloc implementation) is done lazily (between collections).
    182182</UL></DIV>
     
    191191<LI>small initial internal data size;
    192192<LI>less source code (to verify);
    193 <LI>minimal set of the underlaying
     193<LI>minimal set of the underlying
    194194<ACRONYM>clib</ACRONYM>/<ACRONYM>pthread</ACRONYM>/<ACRONYM>Win32</ACRONYM>
    195195functions used.
     
    209209memory unmapping, thread-local allocation, parallel marking, generation and
    210210incremental collections);
    211 <LI>relies on the underlaying malloc/free() implementation (which may be
     211<LI>relies on the underlying malloc/free() implementation (which may be
    212212broken for large heaps, like, e.g., in some versions of msvcrt);
    213213<LI>"all-interior-pointers" mode is limited by the offset of 256
     
    237237<LI>both <ACRONYM>pthreads</ACRONYM> and <ACRONYM>Win32</ACRONYM> threads are
    238238supported;
    239 <LI>no thread-safety of the underlaying malloc/free is required;
     239<LI>no thread-safety of the underlying malloc/free is required;
    240240<LI>the stack direction is detected at <ACRONYM>TinyGC</ACRONYM>
    241241initialization;
     
    246246<LI><ACRONYM>CPU</ACRONYM> state is saved by <CODE>setjmp()</CODE>;
    247247<LI>there is no object "header" (i.e. the original object size is passed to
    248 the underlaying <CODE>malloc()</CODE>).
     248the underlying <CODE>malloc()</CODE>).
    249249</UL>
    250250<P>Usage notes:
Note: See TracChangeset for help on using the changeset viewer.