slab内存管理
2015-12-02 19:13:44 0 举报
slab内存管理是一种针对内核中大量小块内存分配和回收的优化技术。它将内存分为不同大小的块,每个块称为一个slab。当需要分配内存时,内核首先查找空闲的slab,如果找到足够大的空闲空间,就从中分配所需的内存;如果没有足够大的空闲空间,则分配一个新的slab。释放内存时,将内存返回到相应的slab中,如果slab已满,则合并相邻的slab。这种内存管理方式可以减少碎片化,提高内存分配和回收的效率。
作者其他创作
大纲/内容
0
item
...
null
slabclass_t
POWER_LARGET
slabclass_t结构
1
item*
sl_curr
sl_total
void** slots空闲item内存指针数组
uint end_page_free最后一个slab尾部的空闲item数
已失效
void* end_page_ptr最后一个slab尾部的第一个空闲item指针
void** slab_list有效slab的内存指针数组
power_largest
uint killing
void*
slabclass数组
uint sizeitem大小
list_size
第一个仅占位用
end_page_free个元素尚未被分配过
uint perslab每个slab里包含的item数
slabs
0 条评论
下一页