HOME

TheInfoList



OR:

LZX is an
LZ77 LZ77 and LZ78 are the two lossless data compression algorithms published in papers by Abraham Lempel and Jacob Ziv in 1977 and 1978. They are also known as LZ1 and LZ2 respectively. These two algorithms form the basis for many variations including ...
family
compression Compression may refer to: Physical science *Compression (physics), size reduction due to forces *Compression member, a structural element such as a column *Compressibility, susceptibility to compression *Gas compression *Compression ratio, of a c ...
algorithm In mathematics and computer science, an algorithm () is a finite sequence of rigorous instructions, typically used to solve a class of specific problems or to perform a computation. Algorithms are used as specifications for performing ...
, a slightly improved version of DEFLATE. imlib: the open source Windows Imaging (WIM) library - Compression algorit hmhttps://wimlib.net/compression.html/ref> It is also the name of a
file archiver A file archiver is a computer program that combines a number of files together into one archive file, or a series of archive files, for easier transportation or storage. File archivers may employ lossless data compression in their archive formats ...
with the same name. Both were invented by
Jonathan Forbes Jonathan Forbes (born 4 December 1976 in Dublin) is an Irish actor. Early life Forbes was born in Dublin, Ireland on 4 December 1976. He attended Gonzaga College where he was in the same class as fellow actor Andrew Scott, before studying En ...
and
Tomi Poutanen Tomi may refer to: * Constanța Constanța (, ; ; rup, Custantsa; bg, Кюстенджа, Kyustendzha, or bg, Констанца, Konstantsa, label=none; el, Κωνστάντζα, Kōnstántza, or el, Κωνστάντια, Kōnstántia, ...
in 1990s.


Instances of use of the LZX algorithm


Amiga LZX

LZX was publicly released as an
Amiga Amiga is a family of personal computers introduced by Commodore International, Commodore in 1985. The original model is one of a number of mid-1980s computers with 16- or 32-bit processors, 256 KB or more of RAM, mouse-based GUIs, and sign ...
file archiver in 1995, while the authors were studying at the
University of Waterloo The University of Waterloo (UWaterloo, UW, or Waterloo) is a public research university with a main campus in Waterloo, Ontario, Canada. The main campus is on of land adjacent to "Uptown" Waterloo and Waterloo Park. The university also operates ...
in
Canada Canada is a country in North America. Its ten provinces and three territories extend from the Atlantic Ocean to the Pacific Ocean and northward into the Arctic Ocean, covering over , making it the world's second-largest country by tota ...
. The software was
shareware Shareware is a type of proprietary software that is initially shared by the owner for trial use at little or no cost. Often the software has limited functionality or incomplete documentation until the user sends payment to the software developer ...
, which was common for compression software at the time. The registered version contained fixes and improvements not available in the evaluation version. In 1997, the authors gave away a free keyfile, which allowed anyone to use the registered version, as they had stopped work on the archiver and stopped accepting registrations.


Microsoft Cabinet files

In 1996, Forbes went to work for
Microsoft Microsoft Corporation is an American multinational corporation, multinational technology company, technology corporation producing Software, computer software, consumer electronics, personal computers, and related services headquartered at th ...
, and Microsoft's
cabinet Cabinet or The Cabinet may refer to: Furniture * Cabinetry, a box-shaped piece of furniture with doors and/or drawers * Display cabinet, a piece of furniture with one or more transparent glass sheets or transparent polycarbonate sheets * Filing ...
archiver was enhanced to include the LZX compression method. Improvements included a variable search window size; Amiga LZX was fixed to 64 KB, Microsoft LZX could range on powers of two between 32 and 2048
kilobyte The kilobyte is a multiple of the unit byte for digital information. The International System of Units (SI) defines the prefix '' kilo'' as 1000 (103); per this definition, one kilobyte is 1000 bytes.International Standard IEC 80000-13 Quanti ...
s (32,768 to 2,097,152 bytes). A special
preprocessor In computer science, a preprocessor (or precompiler) is a program that processes its input data to produce output that is used as input in another program. The output is said to be a preprocessed form of the input data, which is often used by s ...
was added to detect Intel
80x86 x86 (also known as 80x86 or the 8086 family) is a family of complex instruction set computer (CISC) instruction set architectures initially developed by Intel based on the Intel 8086 microprocessor and its 8088 variant. The 8086 was introd ...
"CALL" instructions, converting their
operand In mathematics, an operand is the object of a mathematical operation, i.e., it is the object or quantity that is operated on. Example The following arithmetic expression shows an example of operators and operands: :3 + 6 = 9 In the above exa ...
s from relative addressing to absolute addressing, thus calls to the same location resulted in repeated strings that the compressor could match, improving compression of 80x86 binary code. (This technique is later generalized as Branch-Call-Jump CJfiltering.)


Microsoft Compressed HTML Help (CHM) files

When Microsoft introduced
Microsoft Compressed HTML Help Microsoft Compiled HTML Help is a Microsoft proprietary online help format, consisting of a collection of HTML pages, an index and other navigation tools. The files are compressed and deployed in a binary format with the extension .CHM, for Comp ...
, the replacement to their classic Help file format, they chose to compress all of the HTML data with the LZX algorithm. However, in order to improve random access speed, the compressor was altered to reset itself after every 64 kilobyte (65,536 bytes) interval and re-align to a 16-bit boundary after every 32 kilobyte interval. Thus, the HTMLHelp software could immediately seek to the nearest 64 kilobyte interval and start decoding from there, rather than decoding from the beginning of the compressed datastream at all times.


Microsoft Reader (LIT) files

Microsoft LIT files for
Microsoft Reader Microsoft Reader is a discontinued Microsoft application for reading e-books, first released in August 2000, that used its own .LIT format. It was available for Windows computers and Pocket PC PDAs. The name was also used later for an unrelated a ...
are simply an extension of the CHM file format, and thus also use LZX compression.


Windows Imaging Format (WIM) files

Windows Imaging Format The Windows Imaging Format (WIM) is a file-based disk image format. It was developed by Microsoft to help deploy Windows Vista and subsequent versions of the Windows operating system family, as well as Windows Fundamentals for Legacy PCs. Design ...
, the installation/drive image file format of
Windows Vista Windows Vista is a major release of the Windows NT operating system developed by Microsoft. It was the direct successor to Windows XP, which was released five years before, at the time being the longest time span between successive releases of ...
and
Windows 7 Windows 7 is a major release of the Windows NT operating system developed by Microsoft. It was released to manufacturing on July 22, 2009, and became generally available on October 22, 2009. It is the successor to Windows Vista, released nearl ...
, uses LZX as one of the compression methods.


CompactOS NTFS file compression

In
Windows 10 Windows 10 is a major release of Microsoft's Windows NT operating system. It is the direct successor to Windows 8.1, which was released nearly two years earlier. It was released to manufacturing on July 15, 2015, and later to retail on ...
, LZX compression from Windows Imaging Format is used for new CompactOS NTFS file compression.


Xbox Live Avatars

Microsoft uses LZX compression on
Xbox Live Avatars Xbox Avatars are avatars and characters that represent users of the Xbox Live service on the Xbox 360, Xbox One, and Xbox Series X and Series S video game consoles, Windows 10, and Windows 10 Mobile. Avatars originally debuted on the Xbox 360 as pa ...
to reduce their disk and bandwidth requirements.


Decompressing LZX files

The unlzx program and XAD can unpack Amiga LZX archives. The cabextract program can unpack Microsoft cabinet files using the LZX method. There are a multitude of cross-platform tools for decompiling or viewing CHM files, as stated in the
CHM CHM may refer to: Biology and medicine * CHM, abbreviation for Clearing House Mechanism under the Convention on Biological Diversity * CHM, a human gene that encodes Rab escort protein 1 * Choroideremia, a retinal disease caused by mutations in the ...
article. LIT files can be unpacked using the Convert LIT software.


See also

*
List of archive formats This is a list of file formats used by archivers and compressors used to create archive files. Archiving only Compression only Archiving and compression Data recovery Comparison Containers and compression Notes While the original ...
*
Comparison of file archivers The following tables compare general and technical information for a number of file archivers. Please see the individual products' articles for further information. They are neither all-inclusive nor are some entries necessarily up to date. Unless ...


References


External links


The LZX page, including many versions of the Amiga LZX archiver

unlzx source code

cabextract (includes source code)

wimlib (included source code)

Convert LIT (includes source code)

Microsoft's LZX DELTA specification
{{Compression Methods Amiga Lossless compression algorithms