It does some slab allocation, but the primary goal of it is to chain together the different buffers that we allocate to capture output. E.g. if we "just" malloc we need some sort of data structure to store which buffers we have allocated. So what would your suggestion be?