From: Phillip Lougher <phillip@lougher.demon.co.uk>
To: landley@trommello.org
Cc: Jeff Garzik <jgarzik@pobox.com>,
Samuel Flory <sflory@rackable.com>,
linux-kernel@vger.kernel.org
Subject: Re: ANNOUNCEMENT: Squashfs released (a highly compressed filesystem)
Date: Sat, 02 Nov 2002 08:57:19 +0000 [thread overview]
Message-ID: <3DC3936F.4070908@lougher.demon.co.uk> (raw)
In-Reply-To: 200211011557.19145.landley@trommello.org
Rob Landley wrote:
> On Wednesday 30 October 2002 23:56, Phillip Lougher wrote:
>
>>Jeff Garzik wrote:
>> > Phillip Lougher wrote:
>> >> 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.
>> >
>> > squashfs or mksquashfs?
>>
>>mksquashfs...
>>
>> > A r/w compressed filesystem would be darned useful too :)
>> >
>> > Jeff
>>
>>A r/w compressed filesystem may be my next project... As a couple of
>>people have mentioned there are compressed r/w filesystems already
>>out there.
>>
>>As you'll know, there are always tradeoffs with filesystem design,
>>it is very difficult to get as good compression with a r/w fs
>>than with a read only filesystem. I wanted to get maximum
>>compression, and quite a few of the techniques I use rely on
>>its read-only nature.
>
>
> A compressed filesystem with dynamically updated random-access files will
> fragment the heck out of itself darn fast. (Seek into the middle of a file
> somewhere, write a block, seek somewhere else, write another block, repeat
> 1000 times... Keep in mind that the new compressed block of data will almost
> certainly not be the same size as the old one... It's a mess.)
>
> My potential usage is: I've got a little linux distribution I put together
> called "firmware linux", which builds from source and outputs a zisofs image
> that gets loopback mounted as the root filesystem. (A very alpha version
> could be sucked off of http://216.143.22.141/firmware/fwl-0.8.tar, edit
> "build.sh" to specify the output directory, and then run it. The point is,
> the whole OS and all applications can be upgraded as one file. No package
> management, it's basically a big firmware image.)
>
> The reason I used a zisofs instead of cramfs is that cramfs has a LOT of
> problems with big filesystems. (The finished root partition, with apache and
> samba and ntop and python and rsync and openssh and everything, is currently
> around 100 megs. Yeah, I can trim that down by quite a bit if I get time,
> I'm currently compilling and developing it under itself so I have gcc in
> there and the full set of man pages and everything...)
>
> Mkcramfs seems to barf at somewhere around 16 megs, which is really limiting.
> AND it seems to try to open every file simultaneously (hardlink detection?)
> so it runs out of file handles. (Again, that could be adjusted under /proc
> somewhere, but isn't worth it.)
>
> So it seems that the thing to test this against isn't cramfs, but zisofs.
> Have you looked at that?
>
> I'll take a look myself and get back to you...
>
> Rob
>
Hi,
I looked at both cramfs and ziosfs when writing squashfs. Zisofs is a
nice fs, but tends to have greater overhead due to the isofs filesystem.
On tests I've found zisofs images to be between 5% (a single directory
with lots of small binaries) and 61% (lots of nested directories) bigger
than the squashfs filesystem.
I believe that squashfs is useful for what you're doing. I'm a bit
hesitant in saying that, because I'd rather people downloaded it and
made up their own minds :-)
Thank you for trying it out, and I hope you like it. I'll obviously be
interested in your thoughts on it.
Phillip
next prev parent reply other threads:[~2002-11-02 8:56 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
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 [this message]
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=3DC3936F.4070908@lougher.demon.co.uk \
--to=phillip@lougher.demon.co.uk \
--cc=jgarzik@pobox.com \
--cc=landley@trommello.org \
--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