什么是 Slab、SReclaimable 和 SUnreclaim?Slab 解决了什么问题以及它在负载下如何表现?

什么是 Slab、SReclaimable 和 SUnreclaim?Slab 解决了什么问题以及它在负载下如何表现?

我有一台配备 32 GB 内存的服务器,htop报告已使用 29 GB,同时还使用了 4 GB 的交换空间。

cat /proc/meminfo返回列为的大约 13 GB 的内存SReclaiable

什么是Slab?什么时候添加的?可回收是什么意思?什么时候发生的?如果有 13 GB 可用,为什么我仍要使用交换空间?

我发现 slab 分配器文档对于只是寻找答案的人来说太过 Unixy,所以我希望有人能够合理地概述它是什么以及它如何运作。

顺便说一句,CentOS 3.10.0-123.13.2.el7.x86_64在这种情况下,它是一个。

附言:我意识到这个问题在很多方面可能不完美,但我希望有一份关于板坯表面的实用指南。也许我们可以从这里开始?

答案1

简而言之,slab 是内核用来运行系统的内存。它们应该被视为分配给操作系统本身的内存。

阅读维基百科Slab 分配页面了解更多信息。

相关内容