Linux内存分配机制:SLAB / SLUB / SLOB
2011-05-15 21:47
721 查看
很久很久以前:一个叫做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是针对小型系统设计的,当然了,主要是嵌入式。相关文章如下:
Anatomy of the Linux slab allocator
The SLUB allocator
The SLOB allocator
这也正好体现了一个Linux内核开发一贯的思想:提供一种机制,而不是一种策略(Provide mechanism not policy)。
Linux内核真是变化太快了,内存管理这块就是一个好例子。
简单的说:Slab是基础,是最早从Sun OS那引进的;Slub是在Slab上进行的改进,在大型机上表现出色(不知道在普通PC上如何),据说还被IA-64作为默认;而Slob是针对小型系统设计的,当然了,主要是嵌入式。相关文章如下:
Anatomy of the Linux slab allocator
The SLUB allocator
The SLOB allocator
这也正好体现了一个Linux内核开发一贯的思想:提供一种机制,而不是一种策略(Provide mechanism not policy)。
相关文章推荐
- Linux内存分配机制之伙伴系统和SLAB
- Linux中的内存分配和释放之slab分配器分析(完)
- Linux内存管理之slab机制(分配对象)
- Linux内存分配----SLAB
- Linux2.6为数据结构分配内存-slab
- linux内存分配机制
- linux 内存分配机制
- slab alloc内存分配机制
- slab alloc内存分配机制
- linux 内存分配机制 (转)
- Linux的内存管理主要分为两部分:物理地址到虚拟地址的映射,内核内存分配管理(主要基于slab)。
- Linux2.6为数据结构分配内存-slab
- linux 3.4.10 内核内存管理源代码分析10:slab通用长度内存分配
- Linux2.6为数据结构分配内存-slab
- slab alloc内存分配机制
- Linux内存管理机制
- 内存分配机制
- C/C++内存分配与Linux内存管理进程所涉及到的五个数据段 .
- linux内存保护机制及进程间通信原理
- Java GC 机制与内存分配策略详解