Delayed allocation splits file block allocation into two stages:
Reservation - disk space is reserved (but not allocated) when writing to cache
Allocation - disk blocks are allocated when flushing data from cache to disk
Benefits of delayed allocation
Fragmentation is reduced by combining writes and allocating extents in large chunks
Short lived files may never need to be allocated
Files written randomly (such as those that are memory mapped) can now be allocated contiguously