mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Rob Landley <landley@trommello.org>
To: Phillip Lougher <phillip@lougher.demon.co.uk>,
	Jeff Garzik <jgarzik@pobox.com>
Cc: Samuel Flory <sflory@rackable.com>, linux-kernel@vger.kernel.org
Subject: Re: ANNOUNCEMENT: Squashfs released (a highly compressed filesystem)
Date: Fri, 1 Nov 2002 15:57:18 +0000	[thread overview]
Message-ID: <200211011557.19145.landley@trommello.org> (raw)
In-Reply-To: <3DC0719A.30101@lougher.demon.co.uk>

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

-- 
http://penguicon.sf.net - Terry Pratchett, Eric Raymond, Pete Abrams, Illiad, 
CmdrTaco, liquid nitrogen ice cream, and caffienated jello.  Well why not?

  reply	other threads:[~2002-11-01 20:50 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-10-30  2:29 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 [this message]
2002-11-02  8:57           ` Phillip Lougher
2002-10-30  6:28     ` Ingo Oeser
2002-10-31  4:08       ` Phillip Lougher
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=200211011557.19145.landley@trommello.org \
    --to=landley@trommello.org \
    --cc=jgarzik@pobox.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=phillip@lougher.demon.co.uk \
    --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

all inboxes | Powered by JetHome®