From 391094ed961d742f431fdd89268274fc0bb52742 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sat, 7 Nov 2015 16:35:26 +0100 Subject: Merging upstream version 1.1~pre1. Signed-off-by: Daniel Baumann --- README | 49 ++++++++++++++++++++++++++++--------------------- 1 file changed, 28 insertions(+), 21 deletions(-) (limited to 'README') diff --git a/README b/README index a2c9a34..7a02327 100644 --- a/README +++ b/README @@ -1,21 +1,40 @@ Description Plzip is a massively parallel (multi-threaded), lossless data compressor -based on the lzlib compression library, with very safe integrity -checking and a user interface similar to the one of bzip2, gzip or lzip. +based on the lzlib compression library, with a user interface similar to +the one of lzip, bzip2 or gzip. -Plzip is intended for faster compression/decompression of big files on -multiprocessor machines, which makes it specially well suited for -distribution of big software files and large scale data archiving. On -files big enough (several GB), plzip can use hundreds of processors. - -Plzip uses the lzip file format; the files produced by plzip are fully -compatible with lzip-1.4 or newer, and can be rescued with lziprecover. +Plzip can compress/decompress large files on multiprocessor machines +much faster than lzip, at the cost of a slightly reduced compression +ratio. On files large enough (several GB), plzip can use hundreds of +processors. On files of only a few MB it is better to use lzip. Plzip 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. +Plzip uses the lzip file format; the files produced by plzip are fully +compatible with lzip-1.4 or newer, and can be rescued with lziprecover. + +The lzip file format is designed for long-term data archiving and +provides very safe integrity checking. The member trailer stores the +32-bit CRC of the original data, the size of the original data and the +size of the member. These values, together with the value remaining in +the range decoder and the end-of-stream marker, provide a 4 factor +integrity checking which guarantees 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. 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. + +If you ever need to recover data from a damaged lzip file, try the +lziprecover program. Lziprecover makes lzip files resistant to bit-flip +(one of the most common forms of data corruption), and provides data +recovery capabilities, including error-checked merging of damaged copies +of a file. + 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, @@ -33,18 +52,6 @@ or more compressed files. The result is the concatenation of the corresponding uncompressed files. Integrity testing of concatenated compressed files is also supported. -As a self-check for your protection, plzip stores in the member trailer -the 32-bit CRC of the original data, the size of the original data and -the size of the member. These values, together with the value remaining -in the range decoder and the end-of-stream marker, provide a very safe 4 -factor integrity checking which guarantees 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. 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. - Copyright (C) 2009, 2010, 2011, 2012, 2013 Antonio Diaz Diaz. -- cgit v1.2.3