File archiver
This article needs additional citations for verification. (August 2016) |
A file archiver is a computer program that combines a number of
Basic archivers just take a list of files and concatenate their contents sequentially into archives. The archive files need to store metadata, at least the names and lengths of the original files, if proper reconstruction is possible. More advanced archivers store additional metadata, such as the original timestamps, file attributes or access control lists.
The process of making an archive file is called archiving or packing. Reconstructing the original files from the archive is termed unarchiving, unpacking or extracting.
History
An early archiver was the Multics command archive, descended from the CTSS command of the same name, which was a basic archiver and performed no compression. Multics also had a "tape_archiver" command, abbreviated ta, which was perhaps the forerunner of the Unix command tar.[1]
Unix archivers
The
.tar.gz
extension.
This approach has two goals:
- It follows the Unix philosophy that each program should accomplish a single task to perfection, as opposed to attempting to accomplish everything with one tool. As compression technology progresses, users may use different compression programs without having to modify or abandon their archiver.
- The archives use solid compression. When the files are combined, the compressor can exploit redundancy across several archived files and achieve better compression than a compressor that compresses each files individually.
This approach, however, has disadvantages too:
- Extracting or modifying one file is difficult. Extracting one file requires decompressing an entire archive, which can be time- and space-consuming. Modifying one means the file needs to be put back into archive and the archive recompressed again. This operation requires additional time and disk space.
- The archive becomes damage-prone. If the area holding shared data for several files is damaged, all those files are lost.
- It is impossible to take advantage of redundancy between files unless the compression window is larger than the size of an individual file. For example, gzip uses DEFLATE, which typically operates with a 32768-byte window, whereas bzip2 uses a Burrows–Wheeler transformroughly 27 times bigger. xz defaults to 8 MiB but supports significantly larger windows.
Windows archivers
The built-in archiver of
See also
- Comparison of file archivers
- Archive format
- List of archive formats
- Comparison of archive formats
References
- ^ Van Vleck, Tom. "Multics Glossary - A". multicians.org. Retrieved Jan 6, 2016.
External links
- Archive formats at Curlie