From 9eab306d85e2f8e6ba93f33ce3c04f238e969b67 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sat, 7 Nov 2015 16:08:12 +0100 Subject: Adding upstream version 0.1. Signed-off-by: Daniel Baumann --- doc/plzip.info | 303 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 303 insertions(+) create mode 100644 doc/plzip.info (limited to 'doc/plzip.info') diff --git a/doc/plzip.info b/doc/plzip.info new file mode 100644 index 0000000..68fa5fa --- /dev/null +++ b/doc/plzip.info @@ -0,0 +1,303 @@ +This is plzip.info, produced by makeinfo version 4.13 from +plzip.texinfo. + +INFO-DIR-SECTION Data Compression +START-INFO-DIR-ENTRY +* Plzip: (plzip). Parallel version of the lzip data compressor +END-INFO-DIR-ENTRY + + +File: plzip.info, Node: Top, Next: Introduction, Up: (dir) + +Plzip Manual +************ + +This manual is for Plzip (version 0.1, 5 December 2009). + +* Menu: + +* Introduction:: Purpose and features of plzip +* Invoking Plzip:: Command line interface +* File Format:: Detailed format of the compressed file +* Problems:: Reporting bugs +* Concept Index:: Index of concepts + + + Copyright (C) 2008, 2009 Antonio Diaz Diaz. + + This manual is free documentation: you have unlimited permission to +copy, distribute and modify it. + + +File: plzip.info, Node: Introduction, Next: Invoking Plzip, Prev: Top, Up: Top + +1 Introduction +************** + +Plzip is a parallel version of the lzip data compressor. Currently only +compression is performed in parallel. Parallel decompression is planned +to be implemented soon. + + Lzip is a lossless data compressor based on the LZMA algorithm, with +very safe integrity checking and a user interface similar to the one of +gzip or bzip2. Lzip decompresses almost as fast as gzip and compresses +better than bzip2, which makes it well suited for software distribution +and data archiving. + + Plzip 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, +ownership as the corresponding original, so that these properties can be +correctly restored at decompression time. Plzip is able to read from +some types of non regular files if the `--stdout' option is specified. + + If no file names are specified, plzip compresses (or decompresses) +from standard input to standard output. In this case, plzip will +decline to write compressed output to a terminal, as this would be +entirely incomprehensible and therefore pointless. + + Plzip will correctly decompress a file which is the concatenation of +two or more compressed files. The result is the concatenation of the +corresponding uncompressed files. Integrity testing of concatenated +compressed files is also supported. + + When decompressing, plzip attempts to guess the name for the +decompressed file from that of the compressed file as follows: + +filename.lz becomes filename +filename.tlz becomes filename.tar +anyothername becomes anyothername.out + + As a self-check for your protection, plzip stores in the member +trailer the 32-bit CRC of the original data and the size of the +original data, to make sure that the decompressed version of the data +is identical to the original. This guards against corruption of the +compressed data, and against undetected bugs in plzip (hopefully very +unlikely). The chances of data corruption going undetected are +microscopic, less than one chance in 4000 million for each member +processed. Be aware, though, that the check occurs upon decompression, +so it can only tell you that something is wrong. It can't help you +recover the original uncompressed data. + + Return values: 0 for a normal exit, 1 for environmental problems +(file not found, invalid flags, I/O errors, etc), 2 to indicate a +corrupt or invalid input file, 3 for an internal consistency error (eg, +bug) which caused plzip to panic. + + +File: plzip.info, Node: Invoking Plzip, Next: File Format, Prev: Introduction, Up: Top + +2 Invoking Plzip +**************** + +The format for running plzip is: + + plzip [OPTIONS] [FILES] + + Plzip supports the following options: + +`--help' +`-h' + Print an informative help message describing the options and exit. + +`--version' +`-V' + Print the version number of plzip on the standard output and exit. + +`--stdout' +`-c' + Compress or decompress to standard output. Needed when reading + from a named pipe (fifo) or from a device. + +`--decompress' +`-d' + Decompress. + +`--force' +`-f' + Force overwrite of output file. + +`--keep' +`-k' + Keep (don't delete) input files during compression or + decompression. + +`--match-length=LENGTH' +`-m LENGTH' + Set the match length limit in bytes. Valid values range from 5 to + 273. Larger values usually give better compression ratios but + longer compression times. + +`--output=FILE' +`-o FILE' + When reading from standard input and `--stdout' has not been + specified, use `FILE' as the virtual name of the uncompressed + file. This produces a file named `FILE' when decompressing, and a + file named `FILE.lz' when compressing. + +`--quiet' +`-q' + Quiet operation. Suppress all messages. + +`--dictionary-size=SIZE' +`-s SIZE' + Set the dictionary size limit in bytes. Valid values range from + 4KiB to 512MiB. Note that dictionary sizes are quantized. If the + specified size does not match one of the valid sizes, it will be + rounded upwards. + +`--test' +`-t' + Check integrity of the specified file(s), but don't decompress + them. This really performs a trial decompression and throws away + the result. Use `-tvv' or `-tvvv' to see information about the + file. + +`--verbose' +`-v' + Verbose mode. Show the compression ratio for each file processed. + Further -v's increase the verbosity level. + +`-1 .. -9' + Set the compression parameters (dictionary size and match length + limit) as shown in the table below. Note that `-9' can be much + slower than `-1'. These options have no effect when decompressing. + + Level Dictionary size Match length limit + -1 1MiB 10 bytes + -2 1MiB 12 bytes + -3 1MiB 17 bytes + -4 2MiB 26 bytes + -5 4MiB 44 bytes + -6 8MiB 80 bytes + -7 16MiB 108 bytes + -8 16MiB 163 bytes + -9 32MiB 273 bytes + +`--fast' +`--best' + Aliases for GNU gzip compatibility. + + + + Numbers given as arguments to options may be followed by a multiplier +and an optional `B' for "byte". + + Table of SI and binary prefixes (unit multipliers): + +Prefix Value | Prefix Value +k kilobyte (10^3 = 1000) | Ki kibibyte (2^10 = 1024) +M megabyte (10^6) | Mi mebibyte (2^20) +G gigabyte (10^9) | Gi gibibyte (2^30) +T terabyte (10^12) | Ti tebibyte (2^40) +P petabyte (10^15) | Pi pebibyte (2^50) +E exabyte (10^18) | Ei exbibyte (2^60) +Z zettabyte (10^21) | Zi zebibyte (2^70) +Y yottabyte (10^24) | Yi yobibyte (2^80) + + +File: plzip.info, Node: File Format, Next: Problems, Prev: Invoking Plzip, Up: Top + +3 File Format +************* + +In the diagram below, a box like this: ++---+ +| | <-- the vertical bars might be missing ++---+ + + represents one byte; a box like this: ++==============+ +| | ++==============+ + + represents a variable number of bytes. + + + A lzip file consists of a series of "members" (compressed data sets). +The members simply appear one after another in the file, with no +additional information before, between, or after them. + + Each member has the following structure: ++--+--+--+--+----+----+=============+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +| ID string | VN | DS | Lzma stream | CRC32 | Data size | Member size | ++--+--+--+--+----+----+=============+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + + All multibyte values are stored in little endian order. + +`ID string' + A four byte string, identifying the member type, with the value + "LZIP". + +`VN (version number, 1 byte)' + Just in case something needs to be modified in the future. Valid + values are 0 and 1. Version 0 files have only one member and lack + `Member size'. + +`DS (coded dictionary size, 1 byte)' + Bits 4-0 contain the base 2 logarithm of the base dictionary size. + Bits 7-5 contain the number of "wedges" to substract from the base + dictionary size to obtain the dictionary size. The size of a wedge + is (base dictionary size / 16). + Valid values for dictionary size range from 4KiB to 512MiB. + +`Lzma stream' + The lzma stream, finished by an end of stream marker. Uses default + values for encoder properties. + +`CRC32 (4 bytes)' + CRC of the uncompressed original data. + +`Data size (8 bytes)' + Size of the uncompressed original data. + +`Member size (8 bytes)' + Total size of the member, including header and trailer. This + facilitates safe recovery of undamaged members from multimember + files. + + + +File: plzip.info, Node: Problems, Next: Concept Index, Prev: File Format, Up: Top + +4 Reporting Bugs +**************** + +There are probably bugs in plzip. There are certainly errors and +omissions in this manual. If you report them, they will get fixed. If +you don't, no one will ever know about them and they will remain unfixed +for all eternity, if not longer. + + If you find a bug in plzip, please send electronic mail to +. Include the version number, which you can find +by running `plzip --version'. + + +File: plzip.info, Node: Concept Index, Prev: Problems, Up: Top + +Concept Index +************* + +[index] +* Menu: + +* bugs: Problems. (line 6) +* file format: File Format. (line 6) +* getting help: Problems. (line 6) +* introduction: Introduction. (line 6) +* invoking: Invoking Plzip. (line 6) +* options: Invoking Plzip. (line 6) +* usage: Invoking Plzip. (line 6) +* version: Invoking Plzip. (line 6) + + + +Tag Table: +Node: Top227 +Node: Introduction750 +Node: Invoking Plzip3401 +Node: File Format6746 +Node: Problems8702 +Node: Concept Index9231 + +End Tag Table -- cgit v1.2.3