Jump to content

Slab allocator

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by 128.220.88.37 (talk) at 16:48, 14 March 2006. The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Slab allocator is a cache management structure for efficient use of kernel memory. It was designed by Jeff Bonwick of Sun Microsystems, for SunOS. It is also a part of the basic Linux kernel memory management system. It is targeted for use of many small pieces of memory chunks. By managing small memory chunks in the units called slabs, this mechanism enables lower fragmentation, fast allocation, and reclaming memory.

Slabs

There can be large slabs and small slabs with the Slab Allocator. The small pages are typically defined as containing objects that are smaller than 1/8 the size of a page on the machine. These small slabs need to be optimized further from the logical layout, by avoiding using bufctls (which would be just as large as the data itself)