Archivador de archivos - File archiver

Un archivador de archivos es un programa informático que combina varios archivos en un archivo de almacenamiento , o una serie de archivos de almacenamiento, para facilitar el transporte o el almacenamiento. Los archivadores de archivos pueden emplear compresión de datos sin pérdida en sus formatos de archivo para reducir el tamaño del archivo.

Los archivadores básicos simplemente toman una lista de archivos y concatenan su contenido secuencialmente en archivos. Los archivos de almacenamiento deben almacenar metadatos , al menos los nombres y longitudes de los archivos originales, si es posible una reconstrucción adecuada. Los archivadores más avanzados almacenan metadatos adicionales, como las marcas de tiempo originales , los atributos de los archivos o las listas de control de acceso .

El proceso de creación de un archivo de almacenamiento se denomina archivado o empaquetado . La reconstrucción de los archivos originales del archivo se denomina desarchivar , desempaquetar o extraer .

Historia

Uno de los primeros archivadores fue el archivo de comandos Multics , descendiente del comando CTSS del mismo nombre, que era un archivador básico y no realizaba ninguna compresión. Multics también tenía un comando "tape_archiver", abreviado ta , que quizás fue el precursor del tar de Unix .

Archivadores Unix

Las herramientas de Unix ar , tar , cpio actúan como archivadores pero no como compresores. Los usuarios de las herramientas de Unix utilizan herramientas de compresión adicionales, como gzip , bzip2 o xz , para comprimir el archivo comprimido después de empaquetarlo o eliminar la compresión antes de descomprimirlo. Las extensiones de nombre de archivo se agregan sucesivamente en cada paso de este proceso. Por ejemplo, archivar una colección de archivos con tar y luego comprimir el archivo de almacenamiento resultante con gzip da como resultado un archivo con .tar.gzextensión.

Este enfoque tiene dos objetivos:

  1. Sigue la filosofía de Unix de que cada programa debe realizar una sola tarea a la perfección, en lugar de intentar lograr todo con una sola herramienta. A medida que avanza la tecnología de compresión, los usuarios pueden utilizar diferentes programas de compresión sin tener que modificar o abandonar su archivador.
  2. Los archivos utilizan una compresión sólida . Cuando se combinan los archivos, el compresor puede aprovechar la redundancia en varios archivos archivados y lograr una mejor compresión que un compresor que comprime cada archivo individualmente.

Sin embargo, este enfoque también tiene desventajas:

  1. Extraer o modificar un archivo es difícil. La extracción de un archivo requiere descomprimir un archivo completo, lo que puede consumir tiempo y espacio. Modificar uno significa que el archivo debe volver a colocarse en el archivo y volver a comprimirlo. Esta operación requiere tiempo y espacio en disco adicionales.
  2. El archivo se vuelve propenso a sufrir daños. Si el área que contiene datos compartidos para varios archivos está dañada, todos esos archivos se perderán.
  3. Es imposible aprovechar la redundancia entre archivos a menos que la ventana de compresión sea mayor que el tamaño de un archivo individual. Por ejemplo, gzip usa DEFLATE , que normalmente opera con una ventana de 32768 bytes, mientras que bzip2 usa una transformación de Burrows-Wheeler aproximadamente 27 veces más grande. xz tiene un valor predeterminado de 8 MiB, pero admite ventanas significativamente más grandes.

Archivadores de Windows

El archivador integrado de Microsoft Windows , así como el software de archivado de terceros, como WinRAR y 7-zip , suelen utilizar una interfaz gráfica de usuario . También ofrecen una interfaz de línea de comandos opcional , mientras que Windows no lo hace. Los archivadores de Windows realizan tanto el archivado como la compresión. Es posible que se ofrezca compresión sólida o no, según el producto: Windows mismo no lo admite; WinRAR y 7-zip lo ofrecen como una opción que se puede activar o desactivar.

Ver también

Referencias

enlaces externos