SquashFS

Da Wikipedia, l'enciclopedia libera.

Squashfs (.sfs) è un file system libero (GPL) compresso di sola lettura per il sistema operativo Linux. Squashfs comprime file, inode e directory, e supporta una dimensione dei blocchi fino a 64K per elevati fattori di compressione. È implementato come un modulo del kernel attraverso il VFS.

Squashfs è utilizzato per file system ad uso generale di file in sola lettura, per uso di archiviazione (i.e. come nel caso in cui si utilizza un file .tar.gz), con vincoli block device/memory systems (e.g. embedded systems) dove un basso overhead sia necessario.

Descrizione[modifica | modifica sorgente]

  • I dati, gli inode e le directory vengono compressi.
  • Squashfs Memorizza uid/gids (32 bits), e la data di creazione del file.
  • Files fino a 16EiB (2^64 byte) sono supportati. I Filesystem possono essere fino a 2^64 bytes.
  • Gli Inode ed i dati delle directory sono fortemente compressi, e pacchettati con byte boundaries. Ogni inode compresso è di media di 8 byte di lunghezza (la esatta lunghezza varia col tipo di file, i.e. file regolari, directory, link simbolici, e gli inode di block/char device hanno differenti dimensioni).
  • Squashfs può usare fino a 64KiB per la dimensione dei blocchi, raggiungendo così migliori risultati di compressione piuttosto che con una dimensione dei blocchi di 4KiB.
  • I file duplicati vengono individuati e memorizzati una sola volta.
  • Sia le architetture Big che Little endian sono supportate. Il programma mksquashfs può generare filesystem per varie architetture endian per i casi in cui l'ordine dei byte del sistema ospitante sia differente (utile per i sistemi embedded).

Voci correlate[modifica | modifica sorgente]

  • CRAMFS un altro file system compresso read-only
  • zisofs una estensione di compressione trasparente al file system ISO 9660
  • Cloop è un device module di loopback compresso per il Linux kernel
  • e2compr è una estensione al file system ext2 nel kernel di Linux per supportare la compressione al volo.

Collegamenti esterni[modifica | modifica sorgente]