Evolución ZIP

Desde PowerArchiver 2017 no escribía nada acerca de compresión, una de mis pasiones desde que empecé con la informática junto a los antivirus.

Hoy voy a hablar otra vez sobre Optimización de archivos .ZIP, esta vez, en cuanto a la evolución del software.

En tiempos en que al menos en España, triunfaba LHARC y ARC, y todavía quedaban rastros de ZOO estaba PKZIP. La herramienta de compresión escrita por Phil Katz en PKWare como evolución de su anterior creación PKARC / PKPAK era para mi increíble, con una velocidad de ejecución nunca antes vista.

En 1989 aparece PKZIP 0.8, e iría evolucionando hasta el final de su vida, al menos bajo DOS, en 1999 con PKZIP 2.50. Diría que su época dorada ocurrió con la versión 2.0 a partir de 1993, que además del algoritmo de compresión Implode, agregaba Deflate.

Nadie hubiera pensado, con la popularización posterior de ARJ, que gracias que el formato era abierto y documentado, Info-ZIP crearía ZIP / UNZIP y Jean-loup Gailly y Mark Adler crearían ZLIB.

El formato ZIP se extendería tan ampliamente, que hoy, en 2018, casi 30 años después de su lanzamiento sigue siendo probablemente el algoritmo de compresión más popular. Con el paso del tiempo, surgieron mejoras menores, como Deflate64 que ampliaba el tamaño de la ventana de un máximo de 32K hasta 64K, y posteriormente ZIPX de WinZIP mezclando otros codecs especializados dentro de ZIP. Claro que esas mejoras, no serían adoptadas fácilmente. Por ejemplo, tuvimos que esperar hasta Windows Vista de 2006 para poder extraer nativamente Deflate64.

Pero el verdadero hecho admirable es que un ordenador de 1993 con PKZip 2 sería capaz de descomprimir archivos creados en 2018, y viceversa, por supuesto. Un ordenador actual, puede manejar esos archivos comprimidos sin ningún tipo de problema, incluso de 1989 con PKZip 0.8.

A pesar de que el algoritmo es el mismo, algo obligatorio para mantener la compatibilidad, el paso del tiempo ha permitido aplicarle ciertos ajustes, lo que unido a una muy superior potencia de cálculo nos permiten algo asombroso. Que esos archivos sean más comprimibles que antaño, sin perder un ápice de su retrocompatibilidad.

He realizado una prueba con un proyecto web. Ocupaba 5.395.118 bytes y constaba de 141 archivos, 14 carpetas. Veamos como ha ido evolucionando su compresión a lo largo de los años.

Programa Versión (año) Compresión Tamaño comprimido en bytes
PKZIP 1.1 (1990) -ex -r -p 1.275.082
PKZIP 2.04g (1993) -ex -r -p 1.131.493
PKZIP 2.50 (1999) -exx -r -p 1.132.011
7-Zip 17.01 (2017) Ultra. Deflate. fb=258 1.095.298
PowerArchiver 18.00.22 (2018) Extremo. Deflate. 1.089.740

Los resultado muestran una mejora notoria, en torno al 15%, no es abismal, pero recordemos que siguen siendo compatibles. Lo curioso es la versión 2.50 de PKZIP, una implementación brillante, que si hubiera llegado unos años antes, habría conquistado el mercado, gracias a sus capacidades en cuanto al uso de hardware más moderno. Sin embargo, al menos en esta medición, logrando unos resultados imperceptiblemente peores.

Evolución ZIP

6 comentarios en “Evolución ZIP”

  1. si, se echaba de menos un articulo de compresión. Recuerdo los primeros winzip, que eran shareware, y que todo el mundo buscaba la clave nada mas instalarlo. Era una herramienta vital que no se entiende que windows haya tardado tanto en hacerla parte de su sistema operativo.

  2. Javier Gutiérrez Chamorro (Guti)

    Es curioso bianamaran como WinZIP, a pesar de ser un producto bastante regular, y fruto del esfuerzo inicial de una sóla persona, acabó conquistando el mercado, precisamente por ser fácil de utilizar. Como bien obserbas, es incomprensible que Microsoft no se diera cuenta de ello, y tuviéramos que esperar hasta Windows XP para incorporar soporte de archivos ZIP. Un soporte, que dicho sea de paso siempre ha sido bastante limitado.

    ¡Por suerte tenemos cosas como 7-Zip!

  3. Yo comencé con WinZip, pero cuando descubrí WinRAR me cambié de inmediato, mejor compresión. El único detalle es que si comprimias con la última versión de WinRAR necesitabas también la última versión para descomprimir. Ahora uso 7zip y no tengo ningún problema y comprime aún más que WinRAR 🙂

  4. Javier Gutiérrez Chamorro (Guti)

    Lo que comentas es algo diferente Manuel. No sólo hablamos de herramientas diferentes, sino además de formatos de archivo, y por tanto de algoritmos de compresión distintos.

  5. A mi me gusta mucho Winrar y es el que uso por defecto aunque hace muchos años que también me gusta usar 7-Zip porque permite extraer muchos instaladores de programas de cuando nos dio en mi antiguo foro por hacer portables.
    Aunque ninguno teníamos estudios de informática entre los 8 foreros que eramos más activos con el esfuerzo de todos hacíamos los programas portables unos con más complicación que otros, eran los tiempos de WinHex .
    Ahora me pongo el Windows de turno y poco más.

  6. Javier Gutiérrez Chamorro (Guti)

    Estamos de acuerdo. WinRAR es magnífico, pero 7-Zip, además de comprimir algo mejor, como dices soporta multitud de formatos de extracción. Aunque es de pago, si no lo conoces te recomiendo probar PowerArchiver, que comprime mejor que 7-Zip.

Deja un comentario