cvs commit: src/usr.bin/tar Makefile bsdtar.1 bsdtar.c bsdtar.h
bsdtar_platform.h matching.c read.c util.c write.c
Tim Kientzle
tim at kientzle.com
Tue Apr 13 11:10:24 PDT 2004
Tim Kientzle wrote:
> Brian F. Feldman wrote:
>
>> ... it should be possible to get more speed out of bsdtar ...
>
> Libarchive ... always writes fixed-size blocks, but you
> can at least set the block size ...
Since the library calls a client-provided write routine
for each block, you should also be able to set up
async writes and get some I/O overlap that way.
(In particular, this might speed up operations
like tar -cf - foo | tar -xf - -C /mnt
to copy dir heirarchies across drives.)
Of course, libarchive reuses it's block buffer,
so you would have to copy the data out before
starting the I/O and returning. Hmmmm....
There's no reason libarchive couldn't use
a round-robin list of block buffers
internally if that would help.
Tim
More information about the freebsd-current
mailing list