Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
This is the user space slab memory allocator, umem, first available in Solaris 9 (SunOS 5.4) now the default allocator on Solaris and Illumos. This implementation has been ported to other popular operating systems, such as Linux, Windows and BSDish systems (including Darwin/OSX) by OmniTI (portableumem) and includes changes made by Joyent as par…
C C++ Assembly
branch: master
Failed to load latest commit information.
sys Initial merge from Joyent including the vmem_allocator strategy addit…
.cvsignore Add --enable-malloc-replacement option, for using libumem as a malloc…
.gitignore Ignore all the unimportant things.
AUTHORS
COPYING Build a basic shared library on Linux; may not work!
COPYRIGHT update copyright info
ChangeLog
Doxyfile.in Use doxygen to build docs; generate spec file using configure; use ta…
Makefile.am move umem_startup constructor to the umem .so itself, rather than
NEWS
OPENSOLARIS.LICENSE Initial revision
README update copyright info
README-alpha tweak for svn
TODO Use doxygen to build docs; generate spec file using configure; use ta…
autogen.sh don't clobber our nice copyright file with GPL
configure.ac move umem_startup constructor to the umem .so itself, rather than
envvar.c Initial merge from Joyent including the vmem_allocator strategy addit…
gdb-macros add gdb macros
getpcstack.c Initial merge from Joyent including the vmem_allocator strategy addit…
i386_subr_sol.s Initial revision
init_lib.c Initial merge from Joyent including the vmem_allocator strategy addit…
init_stand.c Initial revision
linktest_stand.c Initial merge from Joyent including the vmem_allocator strategy addit…
malloc.c Initial merge from Joyent including the vmem_allocator strategy addit…
misc.c Initial merge from Joyent including the vmem_allocator strategy addit…
misc.h Initial merge from Joyent including the vmem_allocator strategy addit…
sol_compat.h Sync with the current sources from onnv-gate.
sparc_subr_sol.s Initial revision
stand_mapfile Initial revision
stub_stand.c Initial merge from Joyent including the vmem_allocator strategy addit…
umem.c Fixes and cleanup.
umem.h Use doxygen to build docs; generate spec file using configure; use ta…
umem.spec.in packaging tweaks from Rich
umem_agent_support.c Initial merge from Joyent including the vmem_allocator strategy addit…
umem_alloc.3 add man pages from opensolaris
umem_base.h Initial merge from Joyent including the vmem_allocator strategy addit…
umem_cache_create.3 add man pages from opensolaris
umem_debug.3 add man pages from opensolaris
umem_fail.c Initial merge from Joyent including the vmem_allocator strategy addit…
umem_fork.c Sync with the current sources from onnv-gate.
umem_impl.h Fixes and cleanup.
umem_test.c Add --enable-malloc-replacement option, for using libumem as a malloc…
umem_test2.c Add another test program
umem_test3.c fixup malloc replacement on 64-bit systems; was missing a configure c…
umem_test4 fix portability issue reported by Mito
umem_update_thread.c Initial merge from Joyent including the vmem_allocator strategy addit…
vmem.c Initial merge from Joyent including the vmem_allocator strategy addit…
vmem_base.c Initial merge from Joyent including the vmem_allocator strategy addit…
vmem_base.h Initial merge from Joyent including the vmem_allocator strategy addit…
vmem_mmap.c Initial merge from Joyent including the vmem_allocator strategy addit…
vmem_sbrk.c Initial merge from Joyent including the vmem_allocator strategy addit…
vmem_stand.c Initial revision
vmem_stand.h Initial revision

README

Portable libumem.
================

This is a port of Solaris libumem to non-Solaris systems.

The port was made while integrating libumem with our Ecelerity MTA product, so
your initial experience will not be 100% out-of-the-box, because there is no
standalone configure script for the library at this time. (patches welcome!)

In addition, since our deployment is threaded, we force the library into
threaded mode.

While the library is itself stable (it's the memory allocator used by the
Solaris OS), the port may have a few rough edges.  We're shipping umem with
Linux and Windows versions of our product as we have found it to be stable.

We will continue to update this project as and when we make improvements, and
welcome third-party patches that improve the usability for everyone.

 
Wez Furlong,
Message Systems, Inc.
wez (at) messagesystems (dot) com

Something went wrong with that request. Please try again.