summaryrefslogtreecommitdiffstats
path: root/doc/clzip.texinfo
diff options
context:
space:
mode:
Diffstat (limited to 'doc/clzip.texinfo')
-rw-r--r--doc/clzip.texinfo55
1 files changed, 28 insertions, 27 deletions
diff --git a/doc/clzip.texinfo b/doc/clzip.texinfo
index 49d0761..ac684be 100644
--- a/doc/clzip.texinfo
+++ b/doc/clzip.texinfo
@@ -6,8 +6,8 @@
@finalout
@c %**end of header
-@set UPDATED 17 July 2013
-@set VERSION 1.5-pre2
+@set UPDATED 1 August 2013
+@set VERSION 1.5-rc1
@dircategory Data Compression
@direntry
@@ -61,10 +61,6 @@ compresses more than bzip2, which makes it well suited for software
distribution and data archiving. Clzip is a clean implementation of the
LZMA algorithm.
-Clzip uses the same well-defined exit status values used by lzip and
-bzip2, which makes it safer when used in pipes or scripts than
-compressors returning ambiguous warning values, like gzip.
-
Clzip uses the lzip file format; the files produced by clzip are fully
compatible with lzip-1.4 or newer, and can be rescued with lziprecover.
Clzip is in fact a C language version of lzip, intended for embedded
@@ -89,6 +85,10 @@ lziprecover program. Lziprecover makes lzip files resistant to bit-flip
recovery capabilities, including error-checked merging of damaged copies
of a file.
+Clzip uses the same well-defined exit status values used by lzip and
+bzip2, which makes it safer when used in pipes or scripts than
+compressors returning ambiguous warning values, like gzip.
+
Clzip replaces every file given in the command line with a compressed
version of itself, with the name "original_name.lz". Each compressed
file has the same modification date, permissions, and, when possible,
@@ -114,7 +114,7 @@ multivolume compressed tar archives.
Clzip is able to compress and decompress streams of unlimited size by
automatically creating multi-member output. The members so created are
-large (about 2^60 bytes each).
+large, about 64 PiB each.
The amount of memory required for compression is about 1 or 2 times the
dictionary size limit (1 if input file size is less than dictionary size
@@ -195,7 +195,7 @@ The ideas embodied in clzip are due to (at least) the following people:
Abraham Lempel and Jacob Ziv (for the LZ algorithm), Andrey Markov (for
the definition of Markov chains), G.N.N. Martin (for the definition of
range encoding), Igor Pavlov (for putting all the above together in
-LZMA), and Julian Seward (for bzip2's CLI and the idea of unzcrash).
+LZMA), and Julian Seward (for bzip2's CLI).
@node Invoking clzip
@@ -224,10 +224,9 @@ Print the version number of clzip on the standard output and exit.
@item -b @var{bytes}
@itemx --member-size=@var{bytes}
-Produce a multi-member file and set the member size limit to @var{bytes}.
-Minimum member size limit is 100kB. Small member size may degrade
-compression ratio, so use it only when needed. The default is to produce
-single-member files.
+Set the member size limit to @var{bytes}. A small member size may
+degrade compression ratio, so use it only when needed. Valid values
+range from 100 kB to 64 PiB. Defaults to 64 PiB.
@item -c
@itemx --stdout
@@ -273,8 +272,8 @@ Quiet operation. Suppress all messages.
@item -s @var{bytes}
@itemx --dictionary-size=@var{bytes}
-Set the dictionary size limit in bytes. Valid values range from 4KiB to
-512MiB. Clzip will use the smallest possible dictionary size for each
+Set the dictionary size limit in bytes. Valid values range from 4 KiB to
+512 MiB. Clzip will use the smallest possible dictionary size for each
member without exceeding this limit. Note that dictionary sizes are
quantized. If the specified size does not match one of the valid sizes,
it will be rounded upwards by adding up to (@var{bytes} / 16) to it.
@@ -288,8 +287,9 @@ is affected at compression time by the choice of dictionary size limit.
Split the compressed output into several volume files with names
@samp{original_name00001.lz}, @samp{original_name00002.lz}, etc, and set
the volume size limit to @var{bytes}. Each volume is a complete, maybe
-multi-member, lzip file. Minimum volume size limit is 100kB. Small volume
-size may degrade compression ratio, so use it only when needed.
+multi-member, lzip file. A small volume size may degrade compression
+ratio, so use it only when needed. Valid values range from 100 kB to 4
+EiB.
@item -t
@itemx --test
@@ -315,7 +315,8 @@ The bidimensional parameter space of LZMA can't be mapped to a linear
scale optimal for all files. If your files are large, very repetitive,
etc, you may need to use the @samp{--match-length} and
@samp{--dictionary-size} options directly to achieve optimal
-performance.
+performance. For example, @samp{-9m64} usually compresses executables
+more (and faster) than @samp{-9}.
@multitable {Level} {Dictionary size} {Match length limit}
@item Level @tab Dictionary size @tab Match length limit
@@ -336,7 +337,6 @@ Aliases for GNU gzip compatibility.
@end table
-@sp 1
Numbers given as arguments to options may be followed by a multiplier
and an optional @samp{B} for "byte".
@@ -402,7 +402,8 @@ All multibyte values are stored in little endian order.
@table @samp
@item ID string
-A four byte string, identifying the lzip format, with the value "LZIP".
+A four byte string, identifying the lzip format, with the value "LZIP"
+(0x4C, 0x5A, 0x49, 0x50).
@item VN (version number, 1 byte)
Just in case something needs to be modified in the future. 1 for now.
@@ -415,8 +416,8 @@ wedges between 0 and 7. The size of a wedge is (base_size / 16).@*
Bits 4-0 contain the base 2 logarithm of the base size (12 to 29).@*
Bits 7-5 contain the number of wedges (0 to 7) to substract from the
base size to obtain the dictionary size.@*
-Example: 0xD3 = (2^19 - 6 * 2^15) = (512KiB - 6 * 32KiB) = 320KiB@*
-Valid values for dictionary size range from 4KiB to 512MiB.
+Example: 0xD3 = 2^19 - 6 * 2^15 = 512 KiB - 6 * 32 KiB = 320 KiB@*
+Valid values for dictionary size range from 4 KiB to 512 MiB.
@item Lzma stream
The lzma stream, finished by an end of stream marker. Uses default values
@@ -459,7 +460,7 @@ clzip -v file
@sp 1
@noindent
Example 2: Like example 1 but the created @samp{file.lz} is multi-member
-with a member size of 1MiB. The compression ratio is not shown.
+with a member size of 1 MiB. The compression ratio is not shown.
@example
clzip -b 1MiB file
@@ -495,7 +496,7 @@ clzip -c /dev/fd0 > file.lz
@sp 1
@noindent
-Example 6: Decompress @samp{file.lz} partially until 10KiB of
+Example 6: Decompress @samp{file.lz} partially until 10 KiB of
decompressed data are produced.
@example
@@ -514,7 +515,7 @@ clzip -cd file.lz | dd bs=1000 skip=10 count=5
@sp 1
@noindent
Example 8: Create a multivolume compressed tar archive with a volume
-size of 1440KiB.
+size of 1440 KiB.
@example
tar -c some_directory | clzip -S 1440KiB -o volume_name
@@ -530,9 +531,9 @@ clzip -cd volume_name*.lz | tar -xf -
@sp 1
@noindent
-Example 10: Create a multivolume compressed backup of a big database
-file with a volume size of 650MB, where each volume is a multi-member
-file with a member size of 32MiB.
+Example 10: Create a multivolume compressed backup of a large database
+file with a volume size of 650 MB, where each volume is a multi-member
+file with a member size of 32 MiB.
@example
clzip -b 32MiB -S 650MB big_db