/lwmem

Lightweight dynamic memory manager library for embedded systems with memory constraints. It implements malloc, calloc, realloc and free functions

Primary LanguageCMIT LicenseMIT

Lightweight dynamic memory manager

Read first: Documentation

Features

  • Written in ANSI C99, compatible with size_t for size data types
  • Implements standard C library functions for memory allocation, malloc, calloc, realloc and free
  • Uses first-fit algorithm to search for free block
  • Supports multiple allocation instances to split between memories and/or CPU cores
  • Supports different memory regions to allow use of fragmented memories
  • Highly configurable for memory allocation and reallocation
  • Supports embedded applications with fragmented memories
  • Supports automotive applications
  • Supports advanced free/realloc algorithms to optimize memory usage
  • Operating system ready, thread-safe API
  • User friendly MIT license

Contribute

Fresh contributions are always welcome. Simple instructions to proceed::

  1. Fork Github repository
  2. Respect C style & coding rules used by the library
  3. Create a pull request to develop branch with new features or bug fixes

Alternatively you may:

  1. Report a bug
  2. Ask for a feature request