SLOB: Difference between revisions
Malcolmxl5 (talk | contribs) m Removing link(s): Wikipedia:Articles for deletion/DSLinux closed as delete (XFDcloser) |
Matthiaspaul (talk | contribs) +hatnote for disamb |
||
Line 1: | Line 1: | ||
{{More footnotes|date=August 2008}} |
{{More footnotes|date=August 2008}} |
||
{{Confuse|slob-octal}} |
|||
{{Use dmy dates|date=August 2012}} |
{{Use dmy dates|date=August 2012|cs1-dates=y}} |
||
The '''SLOB''' (''Simple list of blocks'') allocator is one of three available [[dynamic memory allocation|memory allocators]] in the [[Linux kernel]]. (The other two are [[Slab allocation|SLAB]] and [[SLUB (software)|SLUB]].) The SLOB allocator is designed to require little memory for the implementation and housekeeping, for use in small systems such as embedded systems. Unfortunately, a major limitation of the SLOB allocator is that it suffers greatly from internal [[Fragmentation (computing)|fragmentation]]. |
The '''SLOB''' (''Simple list of blocks'') allocator is one of three available [[dynamic memory allocation|memory allocators]] in the [[Linux kernel]]. (The other two are [[Slab allocation|SLAB]] and [[SLUB (software)|SLUB]].) The SLOB allocator is designed to require little memory for the implementation and housekeeping, for use in small systems such as embedded systems. Unfortunately, a major limitation of the SLOB allocator is that it suffers greatly from internal [[Fragmentation (computing)|fragmentation]]. |
||
Line 20: | Line 19: | ||
[[Category:Memory management algorithms]] |
[[Category:Memory management algorithms]] |
||
[[Category:Linux kernel]] |
[[Category:Linux kernel]] |
||
{{Linux-stub}} |
{{Linux-stub}} |
Revision as of 15:36, 27 July 2020
This article includes a list of general references, but it lacks sufficient corresponding inline citations. (August 2008) |
The SLOB (Simple list of blocks) allocator is one of three available memory allocators in the Linux kernel. (The other two are SLAB and SLUB.) The SLOB allocator is designed to require little memory for the implementation and housekeeping, for use in small systems such as embedded systems. Unfortunately, a major limitation of the SLOB allocator is that it suffers greatly from internal fragmentation.
SLOB currently uses a first-fit algorithm, which uses the first available space for memory. In 2008, a reply from Linus Torvalds on a Linux mailing list[1] was made where he suggested the use of a best-fit algorithm, which tries to find a memory block which suits needs best. Best fit finds the smallest space which fits the required amount available, avoiding loss of performance, both by fragmentation and consolidation of memory.
By default, Linux kernel used a SLAB Allocation system until version 2.6.23, when SLUB allocation became the default. When the CONFIG_SLAB flag is disabled, the kernel falls back to using the "SLOB" allocator.[2] The SLOB allocator was used in DSLinux on Nintendo DS handheld console.
See also
References
- ^ http://lxr.free-electrons.com/source/mm/slob.c SLOB Allocator Documentation and code. Retrieved 12 November 2010
- ^ https://lwn.net/Articles/157944/ slob: introduce the SLOB Allocator. Retrieved 12 November 2010.
External links
- Linux SLB (Simple List of Blocks) Memory Allocator post at Jared Lundquist blog.