日期:2014-05-16 浏览次数:20787 次
Slub分配器创建缓存的过程和Slab差不多,主要的区别在于Slub分配器并不是直接创建一个新的缓存,而是先试图在已有的缓存中找到一个各方面属性和待创建缓存差不多的缓存,如果能找到的话则不会去创建新缓存,而是复用这个已有的缓存,以提高缓存的利用率。
find_mergeable()用来寻找一个可以复用的缓存,它会考察已有缓存和带创建的缓存在各方面是否匹配
再来看一个kmem_cache_create()中比较关键的函数--kmem_cache_open()