5.12 Archiviazione e compressione

Il software è composto da file. Una stessa applicazione può essere composta da più file, anche disposti in varie directory. Può essere agevole poter raccogliere tutti i file che appartengono ad una stessa applicazione o tutti quelli di uno stesso tipo, all’interno di un unico file, detto archivio. Tale necessità sentita inizialmente per l’archiviazione dei file su nastro magnetico, può essere gestita per mezzo dei comandi tar o ar (man page tar(1) o ar(1))

____________________________________________________________________

Comando: tar
Path: /bin/tar

SINTASSI  
$ tar [option] file1 [file2 ...]  
DESCRIZIONE

______________________

[da completare ...]

Talvolta capita che un’informazione, un file (o un insieme di file), debba essere trasferita mediante un floppy disk, posta elettronica o FTP e che l’informazione da trasferire occupi un bel po’ di spazio. Il problema è stato affrontato già da più di una ventina di anni fa, creando dei sistemi di compressione delle informazioni. Tali sistemi sono in grado di comprimere le informazioni presenti in un file, riducendole, ma senza perderne alcuna. Questo è possibile grazie ad algoritmi di predizione: man mano che il ontenuto di un file viene letto, l’algoritmo di predizione tenta di indovinare i byte successivi a quelli letti e più l’algoritmo riesce ad indovinare i byte successivi, più le informazioni risultano compresse, in quanto ricostruibili automaticamente dall’algoritmo di predizione al momento della decompressione. Infatti, le informazioni ricostruibili dall’algoritmo di predizione non devono essere trasmesse poiché possono essere ricostruite in automatico. Grazie a questi meccanismi è possibile produrre versioni compresse di file che arrivano ad occupare uno spazione anche soltanto del 10% di quello ocupato dal file originale (non compresso). È comunque ovvio che per poter rileggere le informazioni è necessario decomprimere il file compresso.

Uno dei primi software per la compressione di informazioni è stato ARC, che venne rimpiazzato verso la fine degli anni ’80 da PKZIP, un algoritmo molto efficiente ideato da Phil Katz, che è stato uno tra i più utilizzati nel corso degli anni.

In GNU/Linux possono essere utilizzati vari algoritmi di compressione delle informazioni come zip, gzip, bzip2.

__________________________________________________________________________________________________________

Comando: gzip
Path: /???/gzip

SINTASSI  
$ gzip [option] [filename ...]  
DESCRIZIONE

______________________________

Per la compressione, gzip utilizza la codifica Lempel-Ziv (LZ77) e produce un file compresso con estenzione .gz.

[da completare ...]