User-space DI-MMAP
Switch branches/tags
Clone or download
egreen77 and mcfadden8 Cleanup (#69)
* Cleaned up usage of std namespace
* Fixed C-compatibility in umap.h
* Disabled some debug messages from being generated when logging is disabled

Build system
* Removed spindle logger from build when logging is disabled
* Added pthreads to umap library dependencies
Latest commit df4c141 Dec 6, 2018

UMAP v0.0.3 (alpha)

Documentation Status

Umap is a library that provides an mmap()-like interface to a simple, user- space page fault handler based on the userfaultfd Linux feature (starting with 4.3 linux kernel). The use case is to have an application specific buffer of pages cached from a large file, i.e. out-of-core execution using memory map.

The src directory in the top level contains the source code for the library.

The tests directory contains various tests written to test the library including a hello world program for userfaultfd based upon code from the userfaultfd-hello-world project.

Quick Start

Building umap is trivial. In the root directory of the repo

mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX = <where you want the sofware> ..
make install

The default for cmake is to build a Debug version of the software. If you would like to build an optimized (-O3) version, simply run

cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX = <where you want the sofware> ..


Both user and code documentation is available here.

If you have build problems, we have comprehensive build sytem documentation too!



Primary contact/Lead developer

Other developers