您现在的位置是:首页 > 文章详情

Linux 内核将弃用并删除 SLOB 内存分配器

日期:2022-11-10点击:253

早在 Linux 2.6.23 版本,SLUB 内存分配器成为 Linux 内核的默认值。仅当 CONFIG_SLAB 标志被禁用时,内核才会回退到使用 SLOB 分配器。而据外媒 Phoronix 报道,Linux 内核开发人员正在考虑弃用并最终删除 SLOB 内存分配器。

SLOB (simple list of blocks)分配器是 Linux 内核中三个可用的内存分配器之一。另外两个是 SLAB ( slab allocator ) 和 SLUB(the unqueued slab allocator)。

SLOB 分配器被设计为仅需要很少的内存来实现和管理,常用于嵌入式系统等小型系统。

来自 SUSE 的 Vlastimil Babka 发送了弃用并删除 SLOB 的内核邮件,邮件中提到 SLOB、SLAB  三个内存分配器通同时维护,导致内核开发人员的负担太大。此外,SLOB 只有部分功能与分配器子集兼容,这也导致在 SLOB 功能上的开发要花费更多精力,间接阻塞了 API 的改进。

但最大的问题还是 SLOB 的适用范围太小,它最初的设计主要是面向小内存设备的分配器,通过将所有对象放在一起处理来争取最小的内存占用。这也导致其 CPU 性能成本很大(锁定、缺乏 percpu 缓存、搜索可用空间等......),而且很容易被外部碎片严重影响,导致性能问题。现在内存已经不值钱了,硬件设备最低 RAM 都得来个 128 MB,SLOB 早已经过了发力的年代。

Vlastimil 在邮件中提到的是放弃 SLOB 和 SLAB 两个内存分配器,只留下 SLUB 。到目前为止,其他上游开发人员都赞成弃用和移除 SLOB,而移除 SLAB 可能需要更多时间。在接下来的几个版本, SLOB 将会被标记为损坏或声明弃用,最终被从内核源码树中剥离。

原文链接:https://www.oschina.net/news/217107/linux-wants-to-drop-slob
关注公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。

持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。

文章评论

共有0条评论来说两句吧...

文章二维码

扫描即可查看该文章

点击排行

推荐阅读

最新文章