Memory management

Crates to help with allocation, memory mapping, garbage collection, reference counting, or interfaces to foreign memory managers

Newest releases

DioxusLabs Fermi: A global state management solution for Dioxus, inspired by Recoil.Js Fermi provides primitives for managing global state in Dioxus applications

hawkw FAQs Q: Why did you make this? A: For tracing, I wanted to be able to send formatted log lines to a dedicated worker thread that writes them to a file

LPGhatguy Thunderdome Thunderdome is a gladitorial generational arena inspired by generational-arena, slotmap, and slab. It provides constant time insertion, lo

zu1k Good Man in the Middle Use MITM technology to provide features like rewrite, redirect. Usage Certificate Preparation For MITM functionality, it is req

memflow scanflow boasts a feature set similar to the likes of CheatEngine, with a simple command line interface. Utilizing memflow, scanflow works in a wide range of situations - from virtual machines, to dedicated DMA hardware. While it'

neg4n trickster user-friendly linux memory hacking library written in Rust. This project is continuation of (from now) abandoned tr library with the same pu

frankmcsherry recycler A small Rust library for recycling types with owned memory Recycler provides the Recycler trait and several implementations. Each Recycler ob

uazu Statically-checked alternatives to RefCell Alternatives to RefCell that instead of panicking at runtime will give compilation errors instead. Document

upsuper default-boxed Helper trait to create instances of large structs with default value on heap directly without going through stack. Similar to the unstab

bodil refpool A reimplementation of Rust's std::boxed::Box and std::rc::Rc which uses a pool of reusable memory to speed up reallocation. Is It Fast? It's a

tailhook Netbuf Documentation | Github | Crate The network buffer for usage in asynchronous network applications. Has right interface for reading from network

others shredder shredder is a library providing a garbage collected smart pointer: Gc. This is useful for times when you want shared access to some data, but

elast0ny shared_memory A crate that allows you to share memory between processes. This crate provides lightweight wrappers around shared memory APIs in an OS a

lovesegfault cache-size A library to quickly get the size and line size of your CPU caches. Currently this crate only supports x86 CPUs, since it relies on the CPU

glandium boxext Extensions to the Box type This crate provides extra initializer methods for Box, working around the current (as of writing) shortcomings from

tov weak-table: weak hash maps and sets for Rust This crate defines several kinds of weak hash maps and sets. See the full API documentation for details.

heroickatora About this repository This repository contains a few interconnected Rust libraries that enable generic, dynamic data structures in environments that d

neoeinstein stats_alloc An instrumenting middleware for global allocators in Rust, useful in testing for validating assumptions regarding allocation patterns, and

fitzgen id-arena A simple, id-based arena. Id-based Allocate objects and get an identifier for that object back, not a reference to the allocated object. Give

udoprog checkers Checkers is a simple allocation sanitizer for Rust. It plugs in through the global allocator and can sanity check your unsafe Rust during int

okready scratchpad A Rust library providing a stack-like memory allocator with double-ended allocation support. Documentation Release notes Scratchpad provide

dropbox Framework for allocating memory in #![no_std] modules. Requirements Rust 1.6 Documentation Currently there is no standard way to allocate memory from

purpleprotocol Mimalloc Rust A drop-in global allocator wrapper around the mimalloc allocator. Mimalloc is a general purpose, performance oriented allocator built by

rust-embedded alloc-cortex-m A heap allocator for Cortex-M processors This project is developed and maintained by the Cortex-M team. Documentation Change log Licens

zslayton lifeguard Object Pool Manager API Documentation Examples Pool issues owned values wrapped in smartpointers. extern crate lifeguard; use lifeguard::*;

schrodingerzhu snmalloc-rs MSVC/MinGW/Linux/MacOS: FreeBSD: snmalloc-rs provides a wrapper for microsoft/snmalloc to make it usable as a global allocator for rust. s

embarkstudios 🐏 rpmalloc-rs Cross-platform Rust global memory allocator using rpmalloc. See the rpmalloc README for a detailed description of how the allocator wor

gz slabmalloc Simple slab based malloc implementation in rust, in order to provide the necessary interface to rusts liballoc library. slabmalloc only rel

orlp slotmap A Rust library providing three containers with persistent unique keys to access stored values, SlotMap, HopSlotMap and DenseSlotMap. Upon inse

rust-osdev linked-list-allocator Documentation Usage Create a static allocator in your root module: use linked_list_allocator::LockedHeap; #[global_allocator] s

danburkert memmap A Rust library for cross-platform memory mapped IO. Features file-backed memory maps anonymous memory maps synchronous and asynchronous flushin

andylokandy smallbox Small Box optimization: store small item on stack and fallback to heap for large item. Requires Rust 1.36+. Documentation Usage First, add th