【发布时间】:2014-11-21 05:56:35
【问题描述】:
Slab — 内核用于缓存数据结构以供自己使用的内存总量,以千字节为单位。
我的问题是,如果任何进程创建自己的平板,那么这个平板内存会转到平板或进程的 PSS 部分吗?
kmalloc 分配的内存分配给 PSS 还是slab?
【问题讨论】:
标签: linux memory-management linux-kernel
Slab — 内核用于缓存数据结构以供自己使用的内存总量,以千字节为单位。
我的问题是,如果任何进程创建自己的平板,那么这个平板内存会转到平板或进程的 PSS 部分吗?
kmalloc 分配的内存分配给 PSS 还是slab?
【问题讨论】:
标签: linux memory-management linux-kernel
我不太确定我是否理解您的问题。 如果要使用slab分配器,可以使用以下API:
kmem_cache_t* kmem_cache_create(const char *name, size_t size, size_t align, unsigned long flags, void (ctor)(void,kmem_cache_t*, unsigned long), (ctor)(void,kmem_cache_t*, unsigned long))
void *kmem_cache_alloc(kmem_cache_t *cachep, int flags)
第一个 API 将为您创建一个平板分配器。 第二个用于分配内存。
kmalloc() 不使用slab。
【讨论】: