The aim of LIBMEM is to provide a common programming interface for a wide range of different memory types.

LIBMEM consists of a mechanism for installing drivers for the different memories and a set of common memory access and control functions that locate the driver for a particular memory range and call the appropriate memory driver functions for the operation.

The LIBMEM library also includes a set of memory drivers for common memory devices.