[TUHS] Unix filesystem semantics history - files with holes

Bakul Shah bakul at bitblocks.com
Fri Apr 12 05:49:34 AEST 2019


On Apr 11, 2019, at 8:57 AM, Richard Tobin <richard at inf.ed.ac.uk> wrote:
> 
>> When did the Unix filesystem add the semantics for "files with holes" (large,
>> sparse files)?
> 
> It was there in the first edition:
> 
> https://www.bell-labs.com/usr/dmr/www/pdfs/man51.pdf

You still had to read all those unallocated blocks as zeroes
if you wanted to copy such a "holey" file. I believe it was
Solaris (may be just for zfs?) that added SEEK_HOLE and
SEEK_DATA lseek whence values.

This could've been hidden if only mmap was allowed on files.
Or alternately read/write buffering was done by the kernel
or the {network,file}-server - which can avoid copying in
cases where it makes sense. 


More information about the TUHS mailing list