Commit graph

58 commits

Author SHA1 Message Date
Con Kolivas 29b166629a Huge rewrite of buffer reading in rzip.c. We use a wrapper instead of
accessing the buffer directly, thus allowing us to have window sizes larger than
available ram. This is implemented through the use of a "sliding mmap"
implementation. Sliding mmap uses two mmapped buffers, one large one as
previously, and one page sized smaller one. When an attempt is made to read
beyond the end of the large buffer, the small buffer is remapped to the file
area that's being accessed. While this implementation is 100x slower than direct
mmapping, it allows us to implement unlimited sized compression windows.
Implement the -U option with unlimited sized windows.
Rework the selection of compression windows. Instead of trying to guess how
much ram the machine might be able to access, we try to safely buffer as much
ram as we can, and then use that to determine the file buffer size. Do not
choose an arbitrary upper window limit unless -w is specified.
Rework the -M option to try to buffer the entire file, reducing the buffer
size until we succeed.
Align buffer sizes to page size.
Clean up lots of unneeded variables.
Fix lots of minor logic issues to do with window sizes accepted/passed to rzip
and the compression backends.
More error handling.
Change -L to affect rzip compression level directly as well as backend
compression level and use 9 by default now.
More cleanups of information output.
Use 3 point release numbering in case one minor version has many subversions.
Numerous minor cleanups and tidying.
Updated docs and manpages.
2010-11-04 21:14:55 +11:00
Con Kolivas c0ac813f6d Update docs.
Bump version number.
Tidy.
2010-11-02 11:14:00 +11:00
Con Kolivas 102140dc2b Reinstate the temporary files for decompression to stdout and testing as the damaged line reinstated last commit meant it looked like those combinations worked when they actually didn't.
Compression from stdin still works without temporary files.
2010-11-02 10:52:21 +11:00
Con Kolivas 0e09c9ec24 Reinstate the temporary file for decompression from stdin. Seeking makes that option broken without the temporary file.
Start documenting the new features in this version.
Minor tidying.
2010-11-01 21:37:55 +11:00
Con Kolivas d87c38f9ce Typo. 2010-05-22 10:09:27 +10:00
Con Kolivas 7d6c68d623 Add lrzuntar man, update manpages and prep for 0.46 release. 2010-05-22 10:07:18 +10:00
Con Kolivas 64eb844d82 Import Jari Aalto's patches and prepare for 0.45 2010-03-30 18:45:48 +11:00
Con Kolivas 6dcceb0b1b Initial import 2010-03-29 10:07:08 +11:00