Projects / Linux Persistent Memory

Linux Persistent Memory

LPSM is a C library with a simple interface that manages a segment of memory backed by a persistent file. It differs from ordinary mmap() in two ways: it can optionally offer heap management (malloc/free/realloc) within the arena, and more importantly, a transaction log is used to ensure the consistency of the persistent representation. The application notifies LPSM whenever the arena is in a consistent state, suitable for checkpointing. If the application or system crashes, the arena will always be recovered to a consistent checkpoint.

Tags
Licenses
Operating Systems
Implementation

RSS Recent releases

  •  15 Jan 2008 01:00

Release Notes: This version makes LPSM work properly on 64-bit platforms.

Release Notes: This release adds a function, lpsm_alloc_size(), which determines the true size of an allocation. It also includes minor tweaks for the ARM, Cris, and PA/RISC platforms.

  •  28 Oct 2001 04:01

Release Notes: SPARC version was overhauled and documentation was majorly cleaned.

Release Notes: Offline log recovery has been added. This release will make sure that "errno" contains useful values. The documentation has been cleaned up some more. There is a workaround for a gcc 2.91 bug.

  •  23 Oct 2001 14:15

Release Notes: This version corrects severe bugs in lpsm_zalloc()/lpsm_calloc() which would usually crash the application.

Screenshot

Project Spotlight

libburnia

A set of libraries and tools for reading, mastering, and writing optical discs.

Screenshot

Project Spotlight

Doubly Linked List

Doubly Linked List API with indexing