Sparse files are supported by the OS, but I'm lacking two operations in Go libraries: 1) fiemap (finding the mapped segments in a sparse file to figure out what should be ignored when reading from disk) 2) punch_hole (removing assigned chunks...)