Civil Rights
Movements, leaders, victories and the continuing fight for equality.
Explore the people, places, events, achievements, struggles and stories that shaped our journey.
Movements, leaders, victories and the continuing fight for equality.
Innovation, patents, science, technology and world-changing contributions.
Pioneers, champions, Negro Leagues, records, activism and excellence.
Meet the people whose lives, choices and achievements shaped the journey.
Black towns, communities, institutions and places where history happened.
Moments that changed communities, movements, institutions and the nation.
Wilmington, North Carolina once had a thriving Black middle class and an elected interracial government. In 1898 white supremacists used violence to overthrow that government, kill Black residents and drive many others from the city.
MORE →Reflects the personal views, recollections, and perspective of the author, Mike Davis.
This is a personal recollection on the Move fire on May 13, 1985
| gzip (software) | |
|---|---|
| Original authors | |
| Developer | GNU Project |
| Release | 31 October 1992 |
| Stable release | 1.15[1] |
| Written in | C |
| Operating system | Unix-like, Plan 9, Inferno |
| Type | Data compression |
| License | GPL-3.0-or-later |
| Website | gnu.org/software/gzip[2] gzip |
| Repository | savannah |
gzip is a file format and a file compression program. The program uses the Deflate algorithm to compress and decompress a single file using the gzip file format.
gzip was released in 1992 as a free software replacement for the compress program because its compression algorithm, LZW, was covered by patents from Unisys and IBM,[4] which did not expire until 2003 and 2004.[5] Jean-Loup Gailly designed the gzip file format,[6] which was later specified by RFC 1952,[7] and originally wrote the gzip program. Mark Adler wrote the decompression part. gzip is now developed by the GNU project.[8]
As the file format can be decompressed via a streaming algorithm, it is commonly used in stream-based technology such as Web protocols, data interchange and ETL (in standard pipes).
| gzip (file format) | |
|---|---|
| Filename extension | .gz, .tgz, .gzip |
| Internet media type | application/gzip[9] |
| Uniform Type Identifier (UTI) |
|
| Magic number |
|
| Size limitation | Unlimited |
| Developed by | Jean-Loup Gailly |
| Type of format | Data compression |
| Compression | Lossless |
| Container for | Deflate stream |
| Standard | RFC 1952 |

A gzip file (described in the table below) consists of a 10-byte header, optional extra header fields, Deflate-compressed data, and an 8-byte trailer.
Although multiple streams may be concatenated (gzipped files are simply decompressed concatenated as if they were originally one file),[10] normally only a single file is compressed.[11] Compressed archives are typically created by assembling collections of files into a single tar archive (also called tarball),[12] and then compressing that archive with gzip. The final compressed file usually has the extension .tar.gz, .tgz, .gz, or .gzip.
gzip is not to be confused with the ZIP archive format, which also uses DEFLATE. The ZIP format can hold collections of files without an external archiver, but is less compact than compressed tarballs holding the same data, because it compresses files individually and cannot take advantage of redundancy between files (solid compression).
The gzip file format is also not to be confused with that of the compress utility, based on LZW, with extension .Z; however, the gunzip utility is able to decompress .Z files.[13]
Endianness is little-endian.[14]
| Offset (bytes) | Field[15] | Size (bytes) | Description |
|---|---|---|---|
| 0 | ID1 | 1 | Magic number. Must be 1F 8B.
|
| 1 | ID2 | 1 | |
| 2 | CM | 1 | Compression method. Must be 8 (Deflate). |
| 3 | FLG | 1 | Flags. Reserved bits must be zero. |
| 4 | MTIME | 4 | Unix time when the file was last modified. If the compressed data did not come from a file, MTIME is the Unix time when compression started. 0 means no timestamp is available.
|
| 8 | XFL | 1 | Extra flags.
|
| 9 | OS | 1 | Filesystem on which compression occurred. |
| 10 | XLEN | 0 or 2 | Extra field is a sequence of subfields. XLEN is the size in bytes of the extra field. Both are present if the FEXTRA flag is set. Each subfield starts with SI1 SI2 (a two-byte identifier; typically two ASCII letters with some mnemonic value) followed by a two-byte LEN value indicating the remaining number of bytes in the subfield. Subfield IDs with SI2 = 0 are reserved for future use.
|
| 12 | Extra field | 0 or XLEN
| |
| Varies | File name | 0 or varies | Null-terminated name of the file being compressed. Present if the FNAME flag is set. Encoded as ISO 8859-1 (latin-1). Converted to lowercase on case-insensitive filesystems. Empty if the compressed data did not come from a named file.
|
| File comment | 0 or varies | Null-terminated file comment intended for human consumption. Present if the FCOMMENT flag is set. Encoded as ISO 8859-1 (latin-1). Newlines should use a single line feed (LF) character.
| |
| CRC16 | 0 or 2 | Two least significant bytes of the CRC-32 (ISO 3309) of all bytes in the gzip file up to (not including) this field. Present if the FHCRC flag is set. | |
| Compressed data | Varies | Deflate stream. | |
| CRC32 | 4 | CRC-32 (ISO 3309) of the uncompressed data. | |
| ISIZE | 4 | Size (in bytes) of the uncompressed data modulo . |
| NetBSD Gzip / FreeBSD Gzip | |
|---|---|
| Developer | The NetBSD Foundation |
| Written in | C |
| Type | Data compression |
| License | Simplified BSD License |
| Repository | cvsweb |
Various implementations of the program have been written. The most commonly known is the GNU Project's implementation using Lempel-Ziv coding (LZ77). OpenBSD's version of gzip is actually the compress program, to which support for the gzip format was added in OpenBSD 3.4. The "g" in this specific version stands for gratis.[16] FreeBSD, DragonFly BSD and NetBSD use a BSD-licensed implementation instead of the GNU version; it is actually a command-line interface for zlib intended to be compatible with the GNU implementations' options.[17] These implementations originally come from NetBSD, and support decompression of bzip2 and the Unix pack format.
An alternative compression program achieving 3-8% better compression is Zopfli. It achieves gzip-compatible compression using more exhaustive algorithms, at the expense of compression time required. It does not affect decompression time.
pigz, written by Mark Adler, is compatible with gzip and speeds up compression by using all available CPU cores and threads.[18]
Data in blocks prior to the first damaged part of the archive is usually fully readable. Data from blocks not demolished by damage that are located afterward may be recoverable through difficult workarounds.[19]
The tar utility included in most Linux distributions can extract .tar.gz files by passing the z option, e.g., tar -zxf file.tar.gz, where -z instructs decompression, -x means extraction, and -f specifies the name of the compressed archive file to extract from. Optionally, -v (verbose) lists files as they are being extracted.[20]
The zlib library supports the gzip file format.[21]
The gzip format is used in HTTP compression, a technique used to speed up the sending of HTML and other content on the World Wide Web. It is one of the three standard formats for HTTP compression as specified in RFC 2616. This RFC also specifies a zlib format (called "DEFLATE"), which is equal to the gzip format except that gzip adds eleven bytes of overhead in the form of headers and trailers. Still, the gzip format is sometimes recommended over zlib because Internet Explorer does not implement the standard correctly and cannot handle the zlib format as specified in RFC 1950.[22]
Since the late 1990s, bzip2, a file compression utility based on a block-sorting algorithm, has gained some popularity as a gzip replacement. It produces considerably smaller files (especially for source code and other structured text), but at the cost of memory and processing time (up to a factor of 4).[23]
AdvanceCOMP, Zopfli, libdeflate and 7-Zip can produce gzip-compatible files, using an internal DEFLATE implementation with better compression ratios than gzip itself—at the cost of more processor time compared to the reference implementation.[citation needed]
Research published in 2023 showed that simple lossless compression techniques such as gzip could be combined with a k-nearest-neighbor classifier to create an attractive alternative to deep neural networks for text classification in natural language processing. This approach has been shown to equal and in some cases outperform conventional approaches such as BERT due to low resource requirements, e.g. no requirement for GPU hardware.[24]
{{cite journal}}: CS1 maint: postscript (link)
For development sources and other information, please see the Gzip project page at savannah.gnu.org.
We developed this program as a replacement for compress because of the Unisys and IBM patents covering the LZW algorithm used by compress.
Unisys U.S. LZW Patent No. 4,558,302 expired on June 20, 2003, the counterpart patents in the United Kingdom, France, Germany and Italy expired on June 18, 2004, the Japanese counterpart patents expired on June 20, 2004 and the counterpart Canadian patent expired on July 7, 2004.
Jean-Loup Gailly designed the gzip format and ...
GNU Gzip is a popular data compression program originally written by Jean-Loup Gailly for the GNU project. Mark Adler wrote the decompression part.
gunzip can currently decompress files created by gzip, zip, compress or pack. The detection of the input format is automatic.
All multi-byte numbers in the format described here are stored with the least-significant byte first (at the lower memory address).
The library also supports reading and writing files in gzip (.gz) format ...
Source: Wikipedia. Article content is retrieved live through the MediaWiki API.
The ZIM file format is an open file format that stores website content for offline usage. The format is defined by the openZIM project, which also supports an open-source ZIM reader called Kiwix. The format is primarily used to store the contents of Wikipedia and other Wikimedia projects, including articles, full-text search indices and auxiliary files. ZIM is an abbreviation for 'Zeno improved', as it replaced the earlier Zeno file format. Since 2021, the library defaults to Zstandard file compression, and also supports LZMA2 compression, as implemented by the XZ Utils library. Most notably, the compression ratio can be up to 3∶1 with almost all of the space savings taking place within the clusters.
gzip is a file format and a file compression program. The program uses the Deflate algorithm to compress and decompress a single file using the gzip file format. gzip was released in 1992 as a free software replacement for the compress program because its compression algorithm, LZW, was covered by patents from Unisys and IBM, which did not expire until 2003 and 2004. Jean-Loup Gailly designed the gzip file format, which was later specified by RFC 1952, and originally wrote the gzip program. Mark Adler wrote the decompression part. gzip is now developed by the GNU project. As the file format can be decompressed via a streaming algorithm, it is commonly used in stream-based technology such as Web protocols, data interchange and ETL (in standard pipes).
bzip2 is a file format and a file compression program. The program uses the Burrows–Wheeler algorithm to compress and decompress a single file using the bzip2 file format. libbzip2 is a lossless data compression software library used by the bzip2 program. bzip2 is not a file archiver and thus relies on separate external utilities such as tar for tasks such as handling multiple files, and other tools for encryption, and archive splitting. bzip2 was initially released in 1996 (originally named bzip) by Julian Seward. It compresses most files more effectively than older LZW and Deflate compression algorithms but is slower. bzip2 is particularly efficient for text data, and decompression is relatively fast. The algorithm uses several layers of compression techniques, such as run-length encoding (RLE), Burrows–Wheeler transform (BWT), move-to-front transform (MTF), and Huffman coding. bzip2 compresses data in blocks between 100 and 900 kB and uses the Burrows–Wheeler transform to convert frequently recurring character sequences into strings of identical letters. The move-to-front transform and Huffman coding are then applied. The compression performance is asymmetric, with decompression being faster than compression. The algorithm has gone through multiple maintainers since its initial release, with Micah Snyder being the maintainer since June 2021. There have been some modifications to the algorithm, such as pbzip2 and lbzip2, which use multi-threading to improve compression speed on multi-CPU and multi-core computers. bzip2 is suitable for use in big data applications with cluster computing frameworks like Hadoop and Apache Spark, as a compressed block can be decompressed without having to process earlier blocks. The bundled bzip2recover utility tries recovering readable parts of damaged bzip2 data. It works by searching for individual blocks and dumping them into separate files.
In information technology, lossy compression, or irreversible compression, is the class of data compression methods that uses inexact approximations and partial data discarding to represent the content. These techniques are used to reduce data size for storing, handling, and transmitting content. Higher degrees of approximation create coarser images as more details are removed. This is opposed to lossless data compression (reversible data compression) which does not degrade the data. The amount of data reduction possible using lossy compression is much higher than using lossless techniques. Well-designed lossy compression technology often reduces file sizes significantly before degradation is noticed by the end-user. Even when noticeable by the user, further data reduction may be desirable (e.g., for real-time communication or to reduce transmission times or storage needs). The most widely used lossy compression algorithm is the discrete cosine transform (DCT), first published by Nasir Ahmed, T. Natarajan and K. R. Rao in 1974. Lossy compression is most commonly used to compress multimedia data (audio, video, and images), especially in applications such as streaming media and internet telephony. By contrast, lossless compression is typically required for text and data files, such as bank records and text articles. It can be advantageous to make a master lossless file which can then be used to produce additional copies from. This allows one to avoid basing new compressed copies on a lossy source file, which would yield additional artifacts and further unnecessary information loss.
Before the 1921 destruction of Tulsa’s Greenwood District, Black residents had created a remarkable center of business and community life. The district included stores, professional offices, entertainment venues and homes owned by Black citizens. Understanding Greenwood means learning what was built—not only what was burned.
MORE →Madam C.J. Walker