Keyboard shortcuts

/ or ⌘/Ctrl K
Find a note
j / k
Next / previous section or linked note
h / l
Collapse or go to parent / expand or enter
e or Alt-click
Read a linked note here
o
Open focused note on its own
g g / G
First / last section or linked note
g h / g a
Home / all notes
g b / g t
Backlinks / table of contents
t
Cycle System, Light, Dark
? / Esc
Show / close this reference

Search: ↑/↓ or Ctrl N/P, Enter to open. Shortcuts pause while typing.

allocators [5a2b0672]

ram (computer memory)

1. linux Nimble Allocator

2. Memory Management

  • Lobster language - aardappel.github.io/lobster/memory_management.html
  • two pointers are vital because they have a start pointer (beginning of the memory block) and end pointer (end of the block). When an allocation is done, the start pointer is moved forward, when memory is released, the start pointer is shifted backwards

3. Allocators

  • Scudo
  • Hoard Allocator
  • jemalloc
  • Dieharder
  • Poseidon Allocator
  • Allocator Aware Infrastructure
  • Comparisons

3.1. Slab allocator

3.2. Misc

### More Papers
*  [The Shadow over Android](https://census-labs.com/media/shadow-infiltrate-2017.pdf)
* [Exploiting the jemalloc Memory Allocator: Owning Firefox's Heap](https://media.blackhat.com/bh-us-12/Briefings/Argyoudis/BH_US_12_Argyroudis_Exploiting_the_%20jemalloc_Memory_%20Allocator_WP.pdf)
* [Attacking the Webkit Heap](https://infiltratecon.com/archives/webkit_heap.pdf)
* [Windows 8 Heap Internals](https://media.blackhat.com/bh-us-12/Briefings/Valasek/BH_US_12_Valasek_Windows_8_Heap_Internals_Slides.pdf)
* [Windows 10 Segment Heap Internals](https://www.blackhat.com/docs/us-16/materials/us-16-Yason-Windows-10-Segment-Heap-Internals.pdf)
* [Heap Layout Optimization for Exploitation](https://www.blackhat.com/docs/eu-17/materials/eu-17-Heelan-Heap-Layout-Optimisation-For-Exploitation.pdf)
* [FreeGuard: A Faster Secure Heap Allocator](https://arxiv.org/pdf/1709.02746.pdf)
    * Academic “fast & secure” heap allocator by the University of Texas (2017)
    * https://github.com/UTSASRG/FreeGuard
* [DieHarder: securing the heap](https://people.cs.umass.edu/~emery/pubs/ccs03-novark.pdf)
    * Academic “security-focused” allocator by the University of Massachusetts (2010)
    * https://github.com/emeryberger/diehard
* [OpenBSD’s ottomalloc](http://openbsd.fries.net/papers/eurobsdcon2009/otto-malloc.pdf)
    * Said operating system’s default usermode allocator, robust by design
* [Intel C++ Compiler C++14 incorrect sized delete compiled code](https://software.intel.com/en-us/forums/intel-c-compiler/topic/783942)
    * Discovered via the sized delete mismatch optional check
    * Envoy double-free/use-after-free
    * Discovered internally in L7 ILB
    * [https://github.com/envoyproxy/envoy/pull/4244](https://github.com/envoyproxy/envoy/pull/4244)
    * [https://github.com/envoyproxy/envoy/pull/6136](https://github.com/envoyproxy/envoy/pull/6136)