关于stl __default_alloc_template 内存释放的问题

看了SGI版本的STL源码,其中default_alloc_template 实现内存的allocate和deallocate时,感觉有一些问题。
其中allocate中只有malloc而在deallocate中没有相应的free,不知道是出于什么考虑才有这种只进不出的设计。
如果这样不是会导致内存越来越多而无法释放么?
与此同时,在小的free_list没有剩余空间时候,会向大的free_list拿空间,这样不是会导致小的free_list越来越多而产生聚集效应么?

http://blog.csdn.net/chengonghao/article/details/51346511