blob: e70167e451bf97b042bb41dd7c946a04c57c4c87 [file] [log] [blame]
SQUASHFS 2.1 - A squashed read-only filesystem for Linux
Copyright 2004 Phillip Lougher (
Released under the GPL licence (version 2 or later).
Welcome to Squashfs version 2.1-r2. Squashfs 2.1 introduces indexed
directories which considerably speed up directory lookup (ls, find etc.) for
directories which are greater than 8K in size. All directories are now also
sorted alphabetically which further speeds up directory lookup. Many smaller
improvements have also been made to this release, please see the CHANGES file
entry for detailed changes.
To give an indication of the directory speed improvements a number of test
results are shown here. There is in addition a new PERFORMANCE.README file
which gives details of I/O and lookup performance for Squashfs 2.1 against
the Zisofs, Cloop and CRAMFS filesystems.
example 1:
Filesystems generated from a single directory of 72,784 files (2.6 MB
directory size). Each file is 10 bytes in size (the test is directory
lookup and so the file size isn't an issue). The ext3 uncompressed
directory size is 288 MB (presumably because of one file per block).
Zisofs compressed size 153.50 MB
Cloop (isofs) compressed size 1.74 MB
Squashfs2.1 compressed size 612 KB (0.60 MB)
Time taken to perform "ls -lR --color=always | cat > /dev/null" on
filesystems mounted on hard disk.
Zisofs 35 minutes 7.895 seconds (User 7.868 secs, Sys 34 mins 5.621 secs)
Cloop 35 minutes 12.765 seconds (User 7.771 secs, Sys 34 mins 3.869 secs)
Squashfs2.1 19 seconds (User 5.119 secs, Sys 14.547 secs)
example 2:
Filesystems were generated from the Ubuntu Warty livecd (original uncompressed
size on ext3 is 1.4 GB).
Zisofs compressed size 589.81 MB
Cloop (isofs) compressed size 471.19 MB
Squashfs2.0 compressed size 448.58 MB
Squashfs2.1 compressed size 448.58 MB
Time taken to perform "ls -lR --color=always | cat > /dev/null" on
filesystems mounted on hard disk.
Zisofs 49.875 seconds (User time 2.589 secs, Sys 11.194 secs)
Cloop 20.797 seconds (User time 2.706 secs, Sys 13.496 secs)
Squashfs2.0 16.556 seconds (User time 2.424 secs, Sys 10.371 secs)
Squashfs2.1 10.143 seconds (User time 2.475 secs, Sys 4.440 secs)
NOTE: the usual warnings apply to these results, they are provided for
illustrative purposes only, and due to different hardware and/or file data, you
may obtain different results. As such the results are provided "as is" without
any warranty (either express or implied) and you assume all risks as to their
quality and accuracy.
There is only one extra option "-2.0". This tells mksquashfs to generate
a filesystem which is mountable with Squashfs version 2.0.
Mounting 2.0 filesystems is supported by Squashfs 2.1. In addition
mksquashfs v2.1 can append to 2.0 filesystems, although the generated
filesystem will still be a 2.0 filesystem.
If you find Squashfs useful then please consider making a donation,
particularly if you use Squashfs in a commercial product. Please consider
giving something back especially if you're making money from it.
Off the Squashfs subject somewhat I'm currently looking for another
job doing Linux kernel or filesystems work. If you know of any such
work that can be performed from the UK then please get in touch. Thanks.