Linux内存分配机制:SLAB / SLUB / SLOB
很久很久以前:一个叫做Mark Hemment的哥儿们写了Slab。在接下来的一些年里,其他人对Slab进行了完善。一年半以前,SLOB问世了。SLOB的目标是针对嵌入式系统的,主要是适用于那些内存非常有限的系统,比如32MB以下的内存,它不太注重large smp系统,虽然最近在这方面有一些小的改进。几个月之前,SLUB闪亮登场。它基本上属于对Slab的重设计(redesign),但是代码更少,并且能更好的适应large NUMA系统。SLUB被很认为是Slab和Slob的取代者,大概在2.6.24/2.6.25将会被同志们抛弃。而SLUB将是未来Linux Kernel中的首选。
Linux内核真是变化太快了,内存管理这块就是一个好例子。
简单的说:Slab是基础,是最早从Sun OS那引进的;Slub是在Slab上进行的改进,在大型机上表现出色(不知道在普通PC上如何),据说还被IA-64作为默认;而Slob是针对小型系统设计的,当然了,主要是嵌入式。相关文章如下:
这也正好体现了一个Linux内核开发一贯的思想:提供一种机制,而不是一种策略(Provide mechanism not policy)。
相关推荐
baishuwei 2020-06-04
owenbbkp 2020-04-29
yaneng 2020-04-14
jj 2010-09-15
宅学部落王利涛 2010-08-25
xiarilove 2010-08-06
upzhai 2011-02-04
小微分享驿站 2011-01-04
jj 2011-08-27
疯仔嵌入式 2011-05-04
yaneng 2020-06-10
yaneng 2020-05-09
yaneng 2020-04-23
Proudoffaith 2020-01-18
lightindark 2013-06-12
zuihaobushi 2019-12-26
supjia 2019-12-09
liuhaishi 2010-10-11