ARC (formato de archivo)


ARC es un formato de archivo y compresión de datos sin pérdida de System Enhancement Associates (SEA). El formato de archivo y el programa se llamaron ARC. El formato es conocido como objeto de controversia en la década de 1980, parte de importantes debates sobre lo que luego se conocería como formatos abiertos .

ARC fue extremadamente popular durante los primeros días del BBS de acceso telefónico . ARC fue conveniente ya que combinó las funciones del programa SQ para comprimir archivos y el programa LU para crear archivos .LBR de múltiples archivos. Posteriormente, el formato fue reemplazado por el formato ZIP , que ofrecía mejores relaciones de compresión y la capacidad de retener estructuras de directorios a través del proceso de compresión/descompresión.

La extensión de nombre de archivo .arc se usa a menudo para varios tipos de archivos similares a archivos no relacionados. Por ejemplo, Internet Archive usó su propio formato ARC para almacenar múltiples recursos web en un solo archivo. [1] [2] El archivador FreeArc también usa la extensión .arc, pero usa un formato de archivo completamente diferente. Nintendo utiliza un formato "ARC" no relacionado para los recursos, como MIDI, muestras de voz o texto, en los juegos de GameCube y Wii. Existen varios extractores no oficiales para este tipo de archivo ARC. [ cita requerida ]

En 1985, Thom Henderson de System Enhancement Associates escribió un programa llamado ARC, [3] basado en programas anteriores como ar , que no solo agrupaba archivos en un solo archivo sino que también los comprimía para ahorrar espacio en disco, una característica de gran importancia. en las primeras computadoras personales, donde el espacio era muy limitado y las velocidades de transmisión del módem eran muy lentas. Los archivos de almacenamiento producidos por ARC tenían nombres de archivo que terminaban en ".ARC" y, por lo tanto, a veces se los llamaba "archivos de arco".

El código fuente de ARC fue publicado por SEA en 1986 y posteriormente portado a Unix y Atari ST en 1987 por Howard Chu. Esta base de código más portátil se transfirió posteriormente a otras plataformas, incluidos los mainframes VAX/VMS e IBM System/370 . El trabajo de Howard también fue el primero en refutar la creencia predominante de que los archivos codificados con Lempel-Ziv no podían comprimirse más. Se podría lograr una compresión adicional utilizando la codificación Huffman en los datos LZW , y la versión de ARC de Howard fue el primer programa en demostrar esta propiedad. Esta técnica híbrida fue utilizada más tarde en varios otros esquemas de compresión por Phil Katz .y otros.

Posteriormente, Phil Katz desarrolló sus propias utilidades shareware, PKARC y PKXARC, para crear archivos de almacenamiento y extraer su contenido. Estos archivos funcionaban con el formato de archivo de almacenamiento utilizado por ARC y eran significativamente más rápidos que ARC en la plataforma IBM-PC debido a la codificación selectiva en lenguaje ensamblador. A diferencia de SEA, que combinaba la creación de archivos y la extracción de archivos en un solo programa, Katz dividía estas funciones entre dos utilidades separadas, lo que reducía la cantidad de memoria necesaria para ejecutarlas. PKARC también permitió la creación de archivos autoextraíbles, que podían desempaquetarse sin necesidad de una utilidad de extracción de archivos externa.