Lempel-Ziv-Oberhumer (LZO ) is a lossless data compression algorithm that is focused on decompression speed.
The LZO library implements a number of algorithms with the following characteristics:
- Compression is comparable in speed to deflate compression.
- On modern architectures, decompression is very fast; in non-trivial cases able to exceed the speed of a straight memory-to-memory copy due to the reduced memory-reads.
- Requires an additional buffer during compression (of size 8 kB or 64 kB, depending on compression level).
- Requires no additional memory for decompression other than the source and destination buffers.
- Allows the user to adjust the balance between compression quality and compression speed, without affecting the speed of decompression.
LZO supports overlapping compression and in-place decompression. It is a block compression algorithm—it compresses and decompresses a block of data. Block size must be the same for compression and decompression. LZO compresses a block of data into matches (a sliding dictionary) and runs of non-matching literals to produce good results on highly redundant data and deals acceptably with non-compressible data, only expanding uncompressible data by a maximum of 1/64th of the original size when measured over a block size of at least 1kB.
A free software tool which implements it is lzop . The original library was written in ANSI C , and it has been made available under the GNU General Public License . Versions of LZO are available for the Perl , Python and Java languages. The copyright for the code is owned by Markus F. X. J. Oberhumer. It was originally published in 1996. Various LZO implementations are reported to work under Win32 , AIX , ConvexOS, IRIX , Mac OS , Palm OS , PlayStation , Nintendo 64 , Wii , Solaris , SunOS , TOS (Atari ST), Linux and VxWorks .
LZO是一种无损数据压缩算法,专注于解压速度。它在现代架构上解压非常快,甚至超过直接内存复制的速度。LZO允许用户调整压缩质量和压缩速度之间的平衡,而不会影响解压速度。

2683

被折叠的 条评论
为什么被折叠?



