From: Phillip Lougher <phillip@lougher.demon.co.uk>
To: Samuel Flory <sflory@rackable.com>
Cc: linux-kernel@vger.kernel.org
Subject: Re: ANNOUNCEMENT: Squashfs released (a highly compressed filesystem)
Date: Wed, 30 Oct 2002 03:51:50 +0000 [thread overview]
Message-ID: <3DBF5756.2010702@lougher.demon.co.uk> (raw)
In-Reply-To: 3DBF4DBA.8060005@rackable.com
Samuel Flory wrote:
> Phillip Lougher wrote:
>
>> Hi,
>>
>> First release of squashfs. Squashfs is a highly compressed read-only
>> filesystem for Linux (kernel 2.4.x). It uses zlib compression to
>> compress both files, inodes and directories. Inodes in the system are
>> very small and all blocks are packed to minimise data overhead. Block
>> sizes greater than 4K are supported up to a maximum of 32K.
>>
>> Squashfs is intended for general read-only filesystem use, for
>> archival use, and in embedded systems where low overhead is needed.
>>
>> Squashfs is available from http://squashfs.sourceforge.net.
>>
>> The patch file is currently against 2.4.19. There is further info on
>> the filesystem design etc. in the README.
>>
>> I'l be interested in getting any feedback, advice etc. on it.
>>
>
> What are the advantages of squashfs vs cramfs?
>
>
>
Cramfs was the inspiration for squashfs. Squashfs basically gives
better compression, bigger files/filesystem support, and more inode
information.
1. Blocks upto 32K are supported - data is compressed in units of 32K
which achieves better compression ratios than compressing in 4K blocks.
Generally using bigger than 4K blocks are a bad idea, because the VFS
calls the filesystem in 4K pages. Squashfs explictly pushes the extra
block data into the page cache.
2. Squashfs compresses inode and directory information in addition to
file data. Inodes/directories generally compress down to 50%, or say on
average 8 bytes or less per inode.
3. All fs data is packed on byte alignments, saving a couple of bytes
per inode and directory.
4. Full 32 bit uids/guids are stored (4 bits stored in inode, uses a
lookup table, to give 48 uids/16 gids). File sizes upto 2^32 are
supported. Timestamp info is stored. Cramfs truncates uids to 16 bits,
uids to 8 bits. Cramfs files sizes are upto 2^24. No timestamp info.
Squashfs takes advantage of metadata compression to have more info with
smaller metadata overhead.
5 Symbolic link contents/file indexes are stored inside the inode table,
giving better compression than if they were compressed individually, or
not compressed.
6. The mksquashfs program doesn't store/mmap the filesystem as it is
created (it performs file duplicate checking against the partially
written out compressed fs), and so allows larger filesystems to be created.
Further info on the fs is contained in the README...
Phillip
next prev parent reply other threads:[~2002-10-30 3:50 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-10-30 2:29 ANNOUNCEMENT: Squashfs released (a highly compressed filesystem) Phillip Lougher
2002-10-30 3:10 ` Samuel Flory
2002-10-30 3:51 ` Phillip Lougher [this message]
2002-10-30 4:03 ` Jeff Garzik
2002-10-30 4:11 ` Larry McVoy
2002-10-30 4:15 ` Jeff Garzik
2002-10-30 14:53 ` Jesse Pollard
2002-10-30 15:10 ` Padraig Brady
2002-10-30 15:42 ` Denis RICHARD
2002-10-31 16:18 ` Nicholas Wourms
2002-10-30 23:56 ` Phillip Lougher
2002-11-01 15:57 ` Rob Landley
2002-11-02 8:57 ` Phillip Lougher
2002-10-30 6:28 ` Ingo Oeser
2002-10-31 4:08 ` Phillip Lougher
-- strict thread matches above, loose matches on Subject: below --
2002-10-30 14:17 Matthew Wilcox
2002-10-31 5:12 Phillip Lougher
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=3DBF5756.2010702@lougher.demon.co.uk \
--to=phillip@lougher.demon.co.uk \
--cc=linux-kernel@vger.kernel.org \
--cc=sflory@rackable.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox