内核内存分配器(Kernel Memory Allocator, KMA)

来源:互联网 发布:java if else同时执行 编辑:程序博客网 时间:2024/04/30 09:51

内核内存分配器(Kernel Memory Allocator, KMA)是一个子系统,试图满足系统中所有部分对内存的请求。


基于各种不同的算法技术,已经提出了几种KMA,包括:

  • 资源图分配算法
  • 2的幂次方空闲链表
  • McKusick-Karels分配算法
  • 伙伴(Buddy)系统
  • Mach的区域(Zone)分配算法
  • Dynix分配算法
  • Solaris的Slab分配算法

slab分配器把对象分组放进高速缓存。
包含高速缓存的主内存区被划分为多个slab,每个slab由一个或多个连续的页框组成,这些页框中既包含已分配的对象,也包含空闲的对象。

原创粉丝点击