memstick.img is bloated with 7% 2K blocks of nulls

perryh at pluto.rain.com perryh at pluto.rain.com
Sun Feb 13 03:49:27 UTC 2011


Tim Kientzle <tim at kientzle.com> wrote:

> The strategy used by libarchive's recent ISO writer
> is to concatenate the file bodies into a temp file
> (with minimal padding between entries to meet alignment
> requirements) while storing directory information
> in memory.  The final output then consists of the
> directory information followed by the concatenated
> file bodies.
>
> I suspect a similar strategy could be used to lay
> out and write a read-only optimized UFS image ...
> I think it's probably feasible but I doubt very
> much of the existing UFS code can be recycled for
> such a project.

There was at one time a capability in mkfs(8) -- which no
longer even exists as a separate entity, having been absorbed
into newfs(8) -- to pre-populate the filesystem with specified
content.  Dunno if it was ever in any BSD release -- it's not
mentioned in the 4.2BSD-derived SunOS 4.1.1 manpage -- so
I may be remembering it from Bell Labs 6th edition on the PDP-11.

The code to collect and write all of an existing filesystem's
directories, followed by all of its files, exists in dump(8).


More information about the freebsd-hackers mailing list