背景介绍
大家在一开始学习内核的时候 书中一直提高slab功能
在深入了解slab功能的时候 可以先思考两个问题
1.什么是slab?
2.它存在的意义是什么?
3.slab工作原理
4.它的缺点是什么?
什么是slab
百度一下 是一个形容词,代表一种坚硬的东西,换中国思维来考虑那就是一个利器,是分配内存的尚方宝剑。
slab存在的意义?
linux内存既然有buddy系统分配页内存,为什么还要用slab?
buddy分配内存只能分配页的问题,但是slab分配可以解决几十个字节的分配问题
设想一下 如果 你的内存只有64M 还要跑linux,如果只用buddy分配内存, 每次声明一个init变量 都会独自占有一个page空间 内存岂不是很快就用完了。