Compression (Zip, ...) : http://z-zip.fr.fm
Une archive est un
fichier informatique qui regroupe plusieurs fichiers ou répertoires (dossiers)
en un seul.
La différence avec un dossier (ou répertoire), c'est qu'il s'agit bien
d'un fichier.
Un logiciel pour créer des archives ou extraire les fichiers d'une archive
s'appelle un archiveur (archiver en anglais).
La plupart des archives appliquent en plus des techniques
de compression de données,
qui, dans certains cas, peuvent diminuer la taille des fichiers.
Il existe différents formats d'archive.
Certains logiciels permettent de manipuler plusieurs formats d'archives et de
compression.
Un fichier n'est compressible (compactable) que s'il est aléatoire (
il contient peu de hasard), on dit aussi de faible entropie
(entropie = quantité de hasard).
Lorsqu'un fichier est compréssé, son contenu devient aléatoire et on ne peut
pas le compresser encore plus.
L'icône qui représente un fichier compressé
est le plus souvent un fichier pris dans un étau,
ou bien une fermeture à glissière (fermeture éclair ou tirette si vous préférez),
car le mot anglais de ces fermetures est "zip",
comme le nom du format de compression le plus populaire).
Il existe aussi des archives auto-extractibles
(SFX = SelF eXtracting Archives en anglais).
Il s'agit de programmes (.exe le plus souvent), qui, lorsqu'on les lance,
vont extraire un ou plusieurs fichiers (et/ou dossiers) dans
le répertoire courant (ou bien un nom de dossier vous sera demandé).
Certaines archives être protégés par un mot de passe
(password en anglais), bien que les
techniques de cryptage employées ne soient pas souvent
les plus efficaces.
On parle aussi de "codec" pour codage / décodage
(plutôt dans le domaine de l'Audio / Vidéo),
et en anglais des synonymes de compress / decompress sont
pack / unpack, shrink / unshrink, deflate / inflate (dégonfler / gonfler),
squash.
\+\
\-\
\^\
Principaux formats d'archive et de compression
[ZIP]
[Java Archive : JAR]
[TAR]
[BZ2]
[GZip]
[Compress]
[Microsoft Cabinet : CAB, MSZIP / LZX]
[RAR]
ZIP : Le format LE PLUS RÉPANDU.
Défini en 1989 par Phil (Phillip W.) Katz (3 Novembre 1962 - 14 Avril 2000)
pour succéder au format "arc".
Il utilise l'algorithme 'deflate'.
Liens :
JAR (Java ARchive) :
Identique au format
ZIP.
On peut renommer les fichiers .jar en .zip.
Un fichier jar peut contenir un fichier
spécial, "MANIFEST.MF".
Un fichier jar sert à distribuer un logiciel écrit en JAVA.
Pour l'exécuter, il faut entrer la ligne de commande :
java -jar <nom_du_fichier_jar>
Pour les programmeurs en JAVA,
sachez que la classe JAVA JarFile du package java.util.jar hérite de ZipFile.
- bzip2 extensions : .bz2,
....tbz = .tar.bz2 (voir tar)
Format de compression seulement.
Parmi les formats les plus courants,
le MEILLEUR TAUX DE COMPRESSION !!!
Il utilise en effet la
Transformation de Burrows-Wheeler au lieu de
LZW comme la plupart des autres formats...
Fichier de test bz2 :
testbz2.txt.bz2
ace
arj
a00, a01... :
http://www.arjsoft.com
http://arj.sourceforge.net
LhA
extension : lha ou lzh.
1988 par Haruyasu Yoshizaki (né le 23 Février 1955)
D'abord appelé LHarc par rapport à PKarc.
-
http://www.datacompression.info/LHA.shtml
-
compress extension : .Z
Standard UNIX.
A fait l'objet d'un brevet (patent en anglais)
de la société UNISYS.
Fichier de test :
testcompress.Z
....taz = .tar.Z
-
pack extension : .z
Standard UNIX -
Utilise le codage de Huffman.
Fichier de test :
test : testpack.txt.z
sit : StuffIt Expander : Plutôt utilisé sur Machintosh
Formats :
, A,
ACE,
ARC,
ARJ, B64, BH, BZ2, BZA, CAB, CPIO,
DEB, ENC, GCA, GZ, GZA, HA, JAR, LHA, LIB, LZH, MBF, MIM,
PAK, PK3, RAR, RPM, TAR, TAZ, TBZ, TGZ, TZ, UUE, WAR, XXE, YZ1, Z, ZIP, ZOO
ICEOWS (Interface de Compression Ergonomique pour windOWS)
-
http://www.iceows.com/HomePageFR.html
-
http://www.iceows.com/Download/Ice420F.exe
Lit : ACE, ARJ, BZ2, CAB, EAR, GZ, HQX, ICE, JAR,
RAR, TAR, WAR, ZIP +
B64, MIME, UUE, XXE
Ecrit : ICE, ARJ et ZIP
ZipGenius
http://www.zipgenius.it
http://www.zipgenius.it/zg5/beta/zg55b1sui.exe (7.9 MB)
http://www.zipgenius.it/zg5/beta/zg55b1std.exe (5.7 MB)
FilZip
-
http://filzip.com/en (en anglais)
-
http://filzip.com/de (en allemand)
-
http://www.filzip.com/fz/release/3.01/fz301.exe
-
http://filzip.com/fz/languages/French/French-pa-3.0.1.ini
QuickZip
-
http://www.quickzip.org
-
http://www.recupsoft.com/applications/quickzip45beta.exe
ZipStar (Freeware pour particuliers)
-
http://www.speedproject.de/enu/zipstar/index.html
-
http://www.sp-download.de/zs4/zs4.exe
Support : Zip, Cab et SQX.
http://www.sqx-archiver.org
CofeeCup ZipWizard
-
http://www.coffeecup.com/zipwizard
-
http://64.49.219.5/CoffeeFreeZipInstaller.exe
WinZip
-
http://www.avanquest.fr/FR/produits/Winzip
-
http://www.winzip.com
-
http://www.winzip.com/french.htm
-
http://download.winzip.com/wz90fr.exe
WinRar
-
http://www.adc-soft.com/winrar.htm
(- de 40 € TTC)
-
http://www.rarsoft.com/rar/wrar33b3fr.exe
(, 1 Mo)
-
http://rarsoft.com/rar/rarosx-3.3.b3.tar.gz
(Mac OS X, 355Ko)
-
http://www.rarlab.com/rar/rarlinux-3.1.0.tar.gz
(Linux , 650Ko)
-
http://rarsoft.com/rar/rarbsd-3.3.b3.tar.gz
(FreeBSD , 390Ko)
MacRar
-
http://macrar.free.fr/index-fr.html
-
http://macrar.free.fr/MacRAR251Fr.sit.hqx
Winace (Shareware)
Prix : $30
-
http://www.shedz.com/winace/wace22.exe
http://www.winace.de/ftp/languages/w204_fr.exe
UltimateZip (Shareware)
http://www.ultimatezip.com
http://www.swe-von-schleusen.de/uz/27us/uzsetup.exe
décompression:
Ace, Arc, Arj , BZip2, Cab, GZip, Jar , Lha, Rar, Tar, Zip, Zoo
UUE, XXE,
compression:
Blak Hole , BZip2, Cabinet, GZip, Jar, Lha, Tar, Zip
\+\
\-\
\^\
Liens Logithèques
-
http://minelog.com/page.php?numero=202
-
http://www.snapfiles.com/freeware/downloader/fwzip.html
\+\
\-\
\^\
Code de Contrôle d'Erreurs (Checksum), Contrôle de Redondance Cyclique (CRC)
Le CRC (Cyclic Redundancy Check en anglais)
contrôle que les données contenues dans une archive ne
sont pas endommagées (en anglais, on parle aussi de checksum).
C'est un calcul effectué à partir de toutes les données du fichier pour
garantir la justesse de la transmission.
Lorsque vous ajoutez un fichier à une archive,
le logiciel d'archivage calcule une valeur CRC
pour le fichier et la sauve dans l’archive.
Plus tard, lors de l'extraction,
le logiciel d'archivage recalcule la valeur CRC des fichiers extraits
et la compare avec celle sauvée dans l’archive.
Si ces deux valeurs ne correspondent pas, le fichier extrait n'est pas
considéré comme conforme à l’original, et
le logiciel d'archivage affiche un message de type :
"Erreur CRC".
Cela signifie qu'il y a peut être eu une erreur de
transmission si le fichier a été transmis sur un réseau
(dans ce cas retéléchargez le fichier),
ou une défaillance du support (disquette, disque dur...)
ou du lecteur (lecteur de disquettes ou de cd-rom, ...)
\+\
\-\
\^\
Commandes Windows pour manipuler les fichiers .cab : expand et makecab
C:\>expand -r test.tx_ .
Utilitaire de décompression de fichiers Microsoft (R) Version 2.50
Copyright (C) Microsoft Corp 1990-1995. Tous droits réservés.
Décompression de test.tx_ en .\test.txt.
test.tx_ : 83 octets décompressés en 2 octets, taux -98%.
C:\>type test.txt
OK
http://msdn.microsoft.com/library/en-us/dncabsdk/html/cabdl.asp
http://www.bellamyjc.net/download/cabarc.exe
http://www.microsoft.com/windows95/downloads/contents/wutoys/w95pwrtoysset
CabExtract
http://www.kyz.uklinux.net/cabextract.php
http://www.kyz.uklinux.net/downloads/cabextract-0.6.tar.gz
\+\
\-\
\^\
Aide Windows XP sur les dossiers compressés
Cliquez sur le lien ici :
file:C:\WINDOWS\Help\compfldr.chm, ou bien :
Ouvrez le "Centre d'aide et de support"
(Taper
+F1
ou utilisez démarrer /
Aide et support
ou démarrer /
Exécuter...
(+R),
puis tapez
helpctr (C:\WINDOWS\PCHEALTH\HELPCTR\Binaries\helpctr.exe),
ou
depuis l'Explorateur
+E),
tapez sur la touche "F1" ou cliquez sur ? et Centre d'aide et de support).
Consultez la rubrique :
Nouveautés de Windows XP /
Nouveautés /
Nouveautés au niveau des fichiers et des dossiers /
Dossiers compressés (zippés).
Internet Explorer peut afficher cette aide, mais pas tout à fait
correctement :
ms-its:C:\WINDOWS\Help\compfldr.chm::/vz_ovrvw.htm
\+\
\-\
\^\
Codage RLE (Run Length Encoding).
C'est le plus simple. Surtout utilisé pour compresser des images noir et blanc,
utilisé pour le fax donc...
Si on prend le texte suivant, on s'aperçoit que certaines
lettres sont répétées plusieurs fois : yahooooo!!!!!!!!
Au lieu de les répéter, on indique combien de fois elles
se répètent, cela donne le code : yah6o8!
Pour décoder, si on voit un chiffre devant une lettre, on répète
celle ci autant de fois que l'indique le chiffre, simple !
http://fr.wikipedia.org/wiki/RLE
Son nom vient des initiales de ses inventeurs :
Abraham Lempel et Jakob Ziv (1977)
et du nom Terry Welch qui a perfectionné la méthode en 1984.
C'est une méthode très ingénieuse et astucieuse qui emploie des algorithmes
très simples.
Ici des groupes de lettres sont remplacés par des codes.
Au départ on a un groupe de lettres (g) vide,
qui a pour code 0.
On analyse le texte caractère par caractère.
Pour chaque caractère C lu,
on ajoute le caractère C à la fin de notre groupe de lettres g (gC).
Si le nouveau groupe de lettres (gc) n'existe pas dans le dictionnaire,
on écrit le code du groupe de caractères g,
on ajoute le nouveau groupe de caractères (gC) au dictionnaire avec le code suivant et
le groupe en cours devient le caractère C
sinon,
le groupe en cours devient le nouveau groupe de caractères gC.
Exemple :
que de querelles de queues
dic c g gc code
00: q [] [q] q
01: u [q] [qu] u
02: e [u] [ue] e
03: [e] [e ]
04: d [ ] [ d] d
05: e [d] [de] e
06> [e] [e ]
06: q [e ] [e q] 3
07> u [q] [qu]
07: e [qu] [que] 1
08: r [e] [er] r
09: e [r] [re] e
10: l [e] [el] l
11: l [l] [ll] l
12: e [l] [le] e
13: s [e] [es] s
14: [s] [s ]
15> d [ ] [ d]
15: e [ d] [ de] 4
16> [e] [e ]
16> q [e ] [e q]
16: u [e q] [e qu] 6
[...]
12345678901234567890123456
--------------------------
que de querelles de queues : (26 caractères)
1234567890123456789
-------------------
que d31erelles4622s : (19 caractères)
Le principe pour la décompression est symétrique
et permet de retrouver le texte initial.
\+\
\-\
\^\
Codage de Huffman.
Cette méthode cherche le codage de longueur variable optimal.
En informatique on appelle "bit" (contraction de BInary digiT,
chiffre binaire, bi=deux)
quelquechose qui peut prendre deux valeurs (0 ou 1 par exemple,
mais aussi vrai ou faux, noir ou blanc, homme ou femme, etc...).
Voir aussi :
http://cermics.enpc.fr/polys/oap/node49.html
Dans la phrase "bal baba cool" qui comporte
13 caractères (en comptant les espaces),
il y a
7 caractères différents (en comptant l'espace).
Tandis que le code ASCII utilise 8 bits par caractère,
on peut utiliser 3 bits seulement, comme ceci :
.... : 000,
a : 001,
b : 010,
c : 011,
o : 100,
l : 101
La fréquence des lettres est :
b:3,
a:3,
l:2,
:2,
c:1,
o:2
On prend les deux lettres de plus petites fréquences.
La plus forte à gauche, la plus faible à droite.
On obtient un "noeud" (père) dont la fréquence est leur somme.
On recommence en enlevant les deux lettres et en les remplaçant
par le noeud, jusqu'à ce qu'il ne reste plus qu'un noeud.
_3_
| |
o c
_4_
| |
.... l
_6_
| |
b a
__7__
| |
_4_ _3_
| | | |
l . o c
____13____
| |
__7__ _6_
| | | |
_4_ _3_ b a
| | | |
l . o c
Le code à utiliser pour chaque caractère s'obtient
en suivant le chemin du noeud du sommet vers le caractère :
on ajoute un 0 si on va à gauche et un 1 si on va à droite.
b:10
a:11
l:000
....:001
o:010
c:011
règle (x10) 1 2 3
règle 123456789012345678901234567890123
codage huffman 101100000110111011001011010010000
lettres b a l . b a b a . c o o l
33 bits au lieu de 39 !
\+\
\-\
\^\
Transformation de Burrows-Wheeler
Burrows-Wheeler Transforma (BWT),
"Block Sorting Lossless Compression Algorithm".
Michael Burrows, professeur à l'université de Cambridge (Angleterre)
David J. Wheeler.
publié en Mai 1994.
L'idée est de trouver une transformation favorable à la compression
(ce n'est pas difficile: il suffit par exemple de trier les octets)
ET qui soit réversible (ce qui n'est pas évident).