What is malloc doing, anyway?