SLOB
SLOB(简单块列表)分配器是Linux内核中的三种内存分配器之一。另外两个是Slab分配器和SLUB。SLOB 分配器被设计为使用很少的内存来实现和管理,用于小型系统(例如嵌入式系统)。但是,SLOB分配器的主要限制在于其易产生外部碎片。
SLOB目前使用首次拟合算法,即使用第一个可用空间作为内存。Linus Torvalds曾在2008年于Linux邮件列表[1]提出建议,使用最优拟合算法,即寻找最合适的可用空间。最优拟合算法查找最小的适合所需大小的可用空间,以避免因内存碎片和合并而造成性能损失。
默认情况下,Linux内核在2.6.23前使用SLAB分配器,此后SLUB分配器成为默认分配器。当CONFIG_SLAB
选项被禁用时,内核将使用SLOB分配器。[2]SLOB分配器被Nintendo DS上的DSLinux使用。
参见
参考资料
- ^ https://elixir.bootlin.com/linux/latest/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.
这是一篇与Linux相关的小作品。您可以通过编辑或修订扩充其内容。 |