Skip to content

Latest commit

 

History

History
4 lines (3 loc) · 564 Bytes

q6.md

File metadata and controls

4 lines (3 loc) · 564 Bytes

为什么有伙伴系统分配器还需要SLAB分配器?

伙伴系统最小的分配单位是一个物理页(4KB),但是大多数情况下,内核需要分配的内存大小通常是几十字节或者几百个字节而已,远远小于一个物理页,如果仅仅使用伙伴系统进行分配内存的话,会出现严重的内部碎片问题,从而导致内存的资源利用率极低,因此操作系统开发人员又设计了另外一套内存分配机制用于分配小内存,这个机制的实现方法之一就是SLAB分配器。