| 89 | | === The [wiki:Commentary/Rts/StorageManager Storage Manager] === |
| | 92 | === The [wiki:Commentary/Rts/Storage Storage Manager] === |
| | 93 | |
| | 94 | [http://darcs.haskell.org/ghc/rts/sm/Storage.c sm/Storage.c]:: |
| | 95 | Top-level of the storage manager. |
| | 96 | |
| | 97 | [http://darcs.haskell.org/ghc/rts/sm/MBlock.c sm/MBlock.c], [http://darcs.haskell.org/ghc/rts/sm/MBlock.h sm/MBlock.h], [http://darcs.haskell.org/ghc/rts/sm/OSMem.h sm/OSMem.h]:: |
| | 98 | The "megablock" allocator; this is the thin layer between the RTS and |
| | 99 | the operating system for allocating memory. |
| | 100 | |
| | 101 | [http://darcs.haskell.org/ghc/rts/sm/BlockAlloc.c sm/BlockAlloc.c], [http://darcs.haskell.org/ghc/rts/sm/BlockAlloc.h sm/BlockAlloc.h]:: |
| | 102 | The low-level block allocator, requires only {{{MBlock}}}. |
| | 103 | |
| | 104 | [http://darcs.haskell.org/ghc/rts/sm/GC.c sm/GC.c], [http://darcs.haskell.org/ghc/rts/sm/Scav.c sm/Scav.c], [http://darcs.haskell.org/ghc/rts/sm/Evac.c sm/Evac.c], [http://darcs.haskell.org/ghc/rts/sm/GCUtils.c sm/GCUtils.c], [http://darcs.haskell.org/ghc/rts/sm/MarkWeak.c sm/MarkWeak.c]:: |
| | 105 | The generational copying garbage collector. |
| | 106 | |
| | 107 | [http://darcs.haskell.org/ghc/rts/sm/Compact.c sm/Compact.c], [http://darcs.haskell.org/ghc/rts/sm/Compact.h sm/Compact.h]:: |
| | 108 | The compacting garbage collector. |
| | 109 | |
| | 110 | [http://darcs.haskell.org/ghc/rts/ClosureFlags.c ClosureFlags.c]:: |
| | 111 | Determining properties of various types of closures. |
| | 112 | |
| | 113 | [http://darcs.haskell.org/ghc/rts/Sanity.c Sanity.c], [http://darcs.haskell.org/ghc/rts/Sanity.h Sanity.h]:: |
| | 114 | A sanity-checker for the heap and related data structures. |
| | 115 | |
| | 116 | [http://darcs.haskell.org/ghc/rts/Stats.c Stats.c], [http://darcs.haskell.org/ghc/rts/Stats.h Stats.h]:: |
| | 117 | Statistics for the garbage collector and storage manager. |
| | 118 | |
| | 119 | [http://darcs.haskell.org/ghc/rts/Stable.c Stable.c]:: |
| | 120 | Stable names and stable pointers. |
| | 121 | |
| | 122 | [http://darcs.haskell.org/ghc/rts/Weak.c Weak.c], [http://darcs.haskell.org/ghc/rts/Weak.h Weak.h]:: |
| | 123 | Weak pointers. |
| | 124 | |
| | 125 | === Data Structures === |
| | 126 | |
| | 127 | Data structure abstractions for use in the RTS: |
| 94 | | [http://darcs.haskell.org/ghc/rts/BlockAlloc.c BlockAlloc.c], [http://darcs.haskell.org/ghc/rts/BlockAlloc.h BlockAlloc.h]:: |
| 95 | | The low-level block allocator, requires only {{{MBlock}}}. |
| 96 | | |
| 97 | | [http://darcs.haskell.org/ghc/rts/ClosureFlags.c ClosureFlags.c]:: |
| 98 | | Determining properties of various types of closures. |
| 99 | | |
| 100 | | [http://darcs.haskell.org/ghc/rts/GC.c GC.c]:: |
| 101 | | The generational copying garbage collector. |
| 102 | | |
| 103 | | [http://darcs.haskell.org/ghc/rts/GCCompact.c GCCompact.c], [http://darcs.haskell.org/ghc/rts/GCCompact.h GCCompact.h]:: |
| 104 | | The compacting garbage collector. |
| 105 | | |
| 109 | | [http://darcs.haskell.org/ghc/rts/MBlock.c MBlock.c], [http://darcs.haskell.org/ghc/rts/MBlock.h MBlock.h], [http://darcs.haskell.org/ghc/rts/OSMem.h OSMem.h]:: |
| 110 | | The "megablock" allocator; this is the thin layer between the RTS and |
| 111 | | the operating system for allocating memory. |
| 112 | | |
| 113 | | [http://darcs.haskell.org/ghc/rts/Sanity.c Sanity.c], [http://darcs.haskell.org/ghc/rts/Sanity.h Sanity.h]:: |
| 114 | | A sanity-checker for the heap and related data structures. |
| 115 | | |
| 116 | | [http://darcs.haskell.org/ghc/rts/Stats.c Stats.c], [http://darcs.haskell.org/ghc/rts/Stats.h Stats.h]:: |
| 117 | | Statistics for the garbage collector and storage manager. |
| 118 | | |
| 119 | | [http://darcs.haskell.org/ghc/rts/Stable.c Stable.c]:: |
| 120 | | Stable names and stable pointers. |
| 121 | | |
| 122 | | [http://darcs.haskell.org/ghc/rts/Storage.c Storage.c]:: |
| 123 | | Top-level of the storage manager. |
| 124 | | |
| 125 | | [http://darcs.haskell.org/ghc/rts/Weak.c Weak.c], [http://darcs.haskell.org/ghc/rts/Weak.h Weak.h]:: |
| 126 | | Weak pointers. |
| 127 | | |