RK3399平台开发系列讲解(内存篇)18.12slub分配器的理念
Posted 内核笔记
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了RK3399平台开发系列讲解(内存篇)18.12slub分配器的理念相关的知识,希望对你有一定的参考价值。
平台 | 内核版本 | 安卓版本 |
---|---|---|
RK3399 | Linux4.4 | android7.1 |
slub
分配器对一个内核开发者来讲是既熟悉又陌生的。
熟悉是因为在开发的过程中大家总会使用到它,什么kmem_cache_alloc()
, kmalloc()
都是slub
分配器的接口。而陌生是因为大部分开发者都不了解slub
分配器的工作机制。像页分配器大家至少还听说过伙伴系统,而slub
分配器好像真的一点绯闻都没有。
那今天我就尝试用我这粗陋的认知给大家揭开一点点盖头来。
设计理念
内存模块就是一个大管家,管理着系统中内存的使用。有人要用内存了,它分配一点。有人释放内存了,它小心翼翼收好。
在整个模块中,我们能看到其运用了三个设计思想。
- 第一个思想就是分层。
- 第二个思想我认为是分类管理。
这个思想从页分配器这一层就开始了。为了更好的管理内存,在页分配器这一层&#
以上是关于RK3399平台开发系列讲解(内存篇)18.12slub分配器的理念的主要内容,如果未能解决你的问题,请参考以下文章
RK3399平台开发系列讲解(内存篇)15.29物理内存管理