On 8/14/06, Kuncoro Irawan <timeshuang@xxxxxxxxx> wrote:
Hi Mauricio, AFAIK, the existence of the slab allocator is to reduce the external fragmentation of Buddy System.(Calls to Buddy system 'dirties' the cache).
Actually it is for the allocation of smaller structures. The structures of the same type are allocated in same page. There is a concept of cache for storing same types. There are lot of features that make it ideal for allocation. See mel goremen's book for further details.
However, the slab itself introduces internal fragmentation caused by mismatch of the requested size and the allocated one. Correct me if i am wrong.
CMIIMW. Yes there might be some internal fragmentation in this technique but it can be neglected over performance. The fragmentation can occur if the structure(type) size is larger. Since only the multiple of type sizes are stored in one page, the leftover is only wasted. Further some spaces are left for coloring, it is for performance (cache) reasons. regards Manish Regmi -- Kernelnewbies: Help each other learn about the Linux kernel. Archive: http://mail.nl.linux.org/kernelnewbies/ FAQ: http://kernelnewbies.org/faq/