Expand description
rusty_rtos_heap — FreeRTOS heap_1 / heap_4 / heap_5 remade in Rust behind the Heap seam, with the heap protector; heap_3 as the seam over rusty_alloc small-metal and esp-alloc; static allocation first-class.
This is the facade: it re-exports the no_std core. Depend on this crate;
reach into the sub-crates only when you are building a port or a backend.
Part of Kairos (Remade With Rust). Plan: docs/plans/rusty_rtos_heap.md.
Modules§
- heap1
heap_1.cover anN-byte arena: allocate, never free.- heap3
heap_3.c: the platform’s allocator behind the family’s heap surface.- heap4
heap_4remade: first fit with coalescing, byte for byte.- heap5
heap_5.c:heap_4’s free list, laid out over several regions.- pool
- A fixed-size block pool: the allocation an RTOS actually makes.
- prelude
- The names a firmware wants in scope.
- rtos_
core rusty_rtos_core— the shared vocabulary of the Kairos family.
Structs§
- Heap1
heap_1.cover anN-byte arena.- Heap3
heap_3.c: the platform’s allocator, behind the family’s heap surface.- Heap4
heap_4.cover anN-byte arena — and, initialised withHeap4::define_regions,heap_5.cover several.- Heap5
heap_5.cover anN-byte arena carved into regions.- Pool
BLOCKSblocks ofBLOCKbytes each.- Region
- One region of a
heap_5heap: where it starts in the arena, and how big. - Slot
- A handle to one block of a
Pool.
Constants§
- VERSION
- Crate version, for manifests and logs.