Slab Allocation - Basis

Basis

The primary motivation for slab allocation is that the initialization and destruction of kernel data objects can actually outweigh the cost of allocating memory for them. As object creation and deletion are widely employed by the kernel, mitigating overhead costs of initialization can result in significant performance gains. The notion of object caching was therefore introduced in order to avoid the invocation of functions used to initialize object state.

With slab allocation, memory chunks suitable to fit data objects of certain type or size are preallocated. The slab allocator keeps track of these chunks, known as caches, so that when a request to allocate memory for a data object of a certain type is received it can instantly satisfy the request with an already allocated slot. Destruction of the object, however, does not free up the memory, but only opens a slot which is put in the list of free slots by the slab allocator. The next call to allocate memory of the same size will return the now unused memory slot. This process eliminates the need to search for suitable memory space and greatly alleviates memory fragmentation. In this context a slab is one or more contiguous pages in the memory containing pre-allocated memory chunks.

Read more about this topic:  Slab Allocation

Famous quotes containing the word basis:

    That food has always been, and will continue to be, the basis for one of our greater snobbisms does not explain the fact that the attitude toward the food choice of others is becoming more and more heatedly exclusive until it may well turn into one of those forms of bigotry against which gallant little committees are constantly planning campaigns in the cause of justice and decency.
    Cornelia Otis Skinner (1901–1979)

    The basis of political economy is non-interference. The only safe rule is found in the self-adjusting meter of demand and supply. Do not legislate. Meddle, and you snap the sinews with your sumptuary laws.
    Ralph Waldo Emerson (1803–1882)

    Socialism proposes no adequate substitute for the motive of enlightened selfishness that to-day is at the basis of all human labor and effort, enterprise and new activity.
    William Howard Taft (1857–1930)