Slab allocation is a memory management mechanism intended for the efficient memory allocation of objects. Compared to earlier mechanisms, it reduces fragmentation caused by allocations and deallocations. The technique is used to retain allocated memory that contains a data object of a certain type for reuse upon subsequent allocations of objects of the same type. It is analogous to an object pool , but only applies to memory, not other resources. Slab allocation was first introduced in the Solaris 2. The primary motivation for slab allocation is that the cost in CPU time of initialization and destruction of kernel data objects can outweigh the cost of allocating memory for them.
|Published (Last):||15 February 2009|
|PDF File Size:||7.1 Mb|
|ePub File Size:||9.70 Mb|
|Price:||Free* [*Free Regsitration Required]|
Skip to search form Skip to main content You are currently offline. Some features of the site may not work correctly. This paper presents a comprehensive design overview of the SunOS 5. The allocator also has several statistical and debugging features that can detect a wide range of problems throughout the system. Expand Abstract. View PDF. Save to Library. Create Alert. Launch Research Feed. Share This Paper. Topics from this paper.
Slab allocation SunOS. Kernel operating system Debugging. Graph coloring Stateless protocol. Citations Publications citing this paper.
Wellings Computer Science Softw. References Publications referenced by this paper. Improving the cache locality of memory allocation Dirk Grunwald , Benjamin G. Zorn Computer Science Softw.
Hanson Computer Science Softw. Using lifetime predictors to improve memory allocation performance David A. Barrett , Benjamin G. Fast fits--new methods for dynamic storage allocation C. Stephenson Computer Science An efficient algorithm for heap storage allocation Charles B. Weinstock , William A. Leverett , Peter G. Hibbard Computer Science Softw. The impact of operating system structure on memory system performance J.
The Slab Allocator: An Object-Caching Kernel Memory Allocator