Unix/Linux Go Back    


NetBSD 6.1.5 - man page for memoryallocators (netbsd section 9)

Linux & Unix Commands - Search Man Pages
Man Page or Keyword Search:   man
Select Man Page Set:       apropos Keyword Search (sections above)


MEMORYALLOCATORS(9)		  BSD Kernel Developer's Manual 	      MEMORYALLOCATORS(9)

NAME
     memoryallocators -- introduction to kernel memory allocators

DESCRIPTION
     The NetBSD kernel provides several memory allocators, each with different characteristics
     and purpose.  This document summarizes the main differences between them.

   The Kmem Allocator
     The kmem allocator is modelled after an interface of similar name implemented in Solaris.
     This is main general purpose allocator in the kernel.

     It is implemented on-top of the vmem(9) resource allocator (beyond the scope of this docu-
     ment), meaning it will be using pool_cache(9) internally to speed-up common (small) sized
     allocations.

     It requires no setup, but cannot be used from interrupt context.

     See kmem(9) for more details.

   The Pool Allocator
     The pool(9) allocator is a fixed-size memory allocator.  It requires setup (to initialize a
     memory pool) and is interrupt-safe.

     See pool(9) for more details.

   The Pool Cache Allocator
     The pool cache allocator works on-top of the pool(9) allocator, also allowing fixed-size
     allocation only, requires setup, and is interrupt-safe.

     The pool cache allocator is expected to be faster than other allocators, including the
     ``normal'' pool allocator.

     In the future this allocator is expected to have a per-CPU cache.

     See pool_cache(9) for more details.

   The UVM Kernel Memory Allocator
     This is a low-level memory allocator interface.  It allows variable-sized allocations in
     multiples of PAGE_SIZE, and can be used to allocate both wired and pageable kernel memory.

     See uvm(9) for more details.

SEE ALSO
     intro(9), kmem(9), pool(9), pool_cache(9), uvm(9), vmem(9)

AUTHORS
     Elad Efrat <elad@NetBSD.org>
     YAMAMOTO Takashi <yamt@NetBSD.org>

BSD					  August 3, 2009				      BSD
Unix & Linux Commands & Man Pages : ©2000 - 2018 Unix and Linux Forums


All times are GMT -4. The time now is 09:57 PM.