blob: 06260f92ba47c071392986ffdf8258adebe1908d (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
|
# Static
0. []()
0. [ASAP: As Static As Possible memory management](https://www.cl.cam.ac.uk/techreports/UCAM-CL-TR-908.pdf)
# Allocation
0. []()
0. [malloc() and free() are a bad API](https://www.foonathan.net/2022/08/malloc-interface/#content)
0. [How to allocate memory](https://geocar.sdf1.org/alloc.html)
0. [Always Bump Downwards](https://fitzgeraldnick.com/2019/11/01/always-bump-downwards.html)
# Compaction
0. []()
0. ["Compacting the Uncompactable" by Bobby Powers](https://www.youtube.com/watch?v=c1UBJbfR-H0)
# Reference counting
0. []()
0. [Perceus: Garbage Free Reference Counting with Reuse (Extended version)](https://www.microsoft.com/en-us/research/publication/perceus-garbage-free-reference-counting-with-reuse/)
0. [Introducing --gc:arc](https://forum.nim-lang.org/t/5734)
0. [Counting Immutable Beans: Reference Counting Optimized for Purely Functional Programming](https://arxiv.org/abs/1908.05647)
# Layout
0. []()
0. [Floorplan: Spatial Layout in Memory Management Systems](https://conf.researchr.org/details/gpce-2019/gpce-2019-papers/6/Floorplan-Spatial-Layout-in-Memory-Management-Systems)
# Garbage collection
0. []()
0. [Destroy All Values: Designing Deinitialization in Programming Languages](https://gankra.github.io/blah/deinitialize-me-maybe/)
0. [Deconstructing the Garbage-First Collector](https://users.cecs.anu.edu.au/~steveb/pubs/papers/g1-vee-2020.pdf)
0. [The Garbage Collection Handbook](http://gchandbook.org/)
0. [Baby's First Garbage Collector](http://journal.stuffwithstuff.com/2013/12/08/babys-first-garbage-collector/)
# Smart references
0. []()
0. [Smart References: There and Back Again - Erik Valkering [ CppCon 2018 ]](https://www.youtube.com/watch?v=bfm9m3xJQRY)
# Reference
0. [Write barrier optimizations in regions](https://maoni0.medium.com/write-barrier-optimizations-in-regions-984bde6c0ffc)
0. [Move Operation + "Use After Move" Diagnostic](https://github.com/apple/swift-evolution/blob/main/proposals/0366-move-function.md)
0. [Relative Pointers](https://www.gingerbill.org/article/2020/05/17/relative-pointers/)
0. [Scopes Describe Frames: A Uniform Model for Memory Layout in Dynamic Semantics](http://drops.dagstuhl.de/opus/volltexte/2016/6114/)
0. https://uridiumauthor.blogspot.com/2018/06/memory-management.html
0. https://github.com/mtrebi/memory-allocators
0. http://www.newlisp.org/MemoryManagement.html
0. http://gee.cs.oswego.edu/dl/html/malloc.html
0. https://shipilev.net/blog/2014/jmm-pragmatics/
0. https://floooh.github.io/2018/06/17/handles-vs-pointers.html
0. https://www.codemag.com/Article/1807051/Introducing-.NET-Core-2.1-Flagship-Types-Span-T-and-Memory-T
0. https://stefansf.de/post/pointers-are-more-abstract-than-you-might-expect/
0. [Memory Management Reference](https://www.memorymanagement.org/)
0. [Pseudomonarchia jemallocum: The false kingdom of jemalloc, or On exploiting the jemalloc memory manager](http://phrack.com/issues/68/10.html#article)
0. https://gankro.github.io/blah/rust-layouts-and-abis/
0. https://paul.bone.id.au/2018/10/19/gc-falsehoods/
0. [Safe Programming with Pointers through Stateful Views](https://www.cs.bu.edu/~hwxi/academic/papers/padl05.pdf)
|