A file archiver is a computer program that combines a number of
files
File or filing may refer to:
Mechanical tools and processes
* File (tool), a tool used to ''remove'' fine amounts of material from a workpiece
**Filing (metalworking), a material removal process in manufacturing
** Nail file, a tool used to gent ...
together into one
archive file
In computing, an archive file is a computer file that is composed of one or more files along with metadata. Archive files are used to collect multiple data files together into a single file for easier portability and storage, or simply to compre ...
, or a series of archive files, for easier transportation or storage. File archivers may employ
lossless data compression
Lossless compression is a class of data compression that allows the original data to be perfectly reconstructed from the compressed data with no loss of information. Lossless compression is possible because most real-world data exhibits statist ...
in their
archive formats to reduce the size of the archive.
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 attribute File attributes are a type of meta-data that describe and may modify how files and/or directories in a filesystem behave. Typical file attributes may, for example, indicate or specify whether a file is visible, modifiable, compressed, or encrypte ...
s 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''.
Unix archivers
The
Unix
Unix (; trademarked as UNIX) is a family of multitasking, multiuser computer operating systems that derive from the original AT&T Unix, whose development started in 1969 at the Bell Labs research center by Ken Thompson, Dennis Ritchie, a ...
tools ''
ar'', ''
tar
Tar is a dark brown or black viscosity, viscous liquid of hydrocarbons and free carbon, obtained from a wide variety of organic matter, organic materials through destructive distillation. Tar can be produced from coal, wood, petroleum, or peat. ...
'', and ''
cpio'' act as archivers but not compressors. Users of the Unix tools use additional compression tools, such as
gzip,
bzip2, or
xz, to compress the archive file after packing or remove compression before unpacking the archive file. The
filename extensions are successively added at each step of this process. For example, archiving a collection of files with ''tar'' and then compressing the resulting archive file with ''gzip'' results a file with
.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 transform roughly 27 times bigger. xz defaults to 8 MiB but supports significantly larger windows.
Windows archivers
The built-in archiver of
Microsoft Windows as well as third-party archiving software, such as
WinRAR and
7-zip, often use a
graphical user interface. They also offer an optional
command-line interface, while Windows itself does not. Windows archivers perform both archiving and compression.
Solid compression may or may not be offered, depending on the product: Windows itself does not support it; WinRAR and 7-zip offer it as an option that can be turned on or off.
See also
*
Comparison of file archivers
*
Archive format
*
List of archive formats
*
Comparison of archive formats
References
External links
*
{{DEFAULTSORT:File Archiver
Storage systems
Computer file systems
Computer archives
Utility software types