[pocket-linux] Pocket Linux system with busybox, ulibc, etc...

David Horton dhorton at speakeasy.net
Tue Jun 1 21:54:33 CDT 2004


I wanted to forward this email to the list to see how many people would 
be interested in creating an ultra-small system using the technologies 
that Artemiy describes below.  If this looks like something you would 
like to do, please email me.  Provided there is a fair amount of 
interest I can set up some resources on the Pocket Linux SourceForge 
site to get this going.

Dave


-------- Original Message --------
Subject: Pocket Linux Guide
Date: Tue, 1 Jun 2004 16:40:42 +0300
From: Artemio <theman at artemio.net>
To: dhorton at member.fsf.org

Dear David,

my name is Artemiy.

At first I want to tell you that I have just looked through your Pocket 
Linux
Guide and I am amazed - it is so simple to understand, but so in-depth and
technically rich. Great work!

I just wanted to suggest you include some hints on two modern technologies
that just beg to get into your guide ;-)

1. SquashFS is a read-only compressed filesystem that uses zlib and 
sometimes
is better to use for ramdisks than gzipped ext2 filesystems (basically
because it may be more secure to have a read-only fs, and it sometimes also
compresses a bit tighter than gzip). I myself am the author of SquashFS 
HOWTO
which may help you get some info and tips.

link: http://tldp.org/HOWTO/SquashFS-HOWTO/index.html

2. UPX (the Ultimate Packer for eXecutables) is an amazing utility that 
does
unbeliavable things. It can compress binaries and linux kernels (!) 
providing
a built-in decompression code. UPX can compress a gzipped kernel from ~750K
to ~650K, and gives 30-50% compression ratio for binaries. Note that the 
guys
that created UPX also were hired by NASA to develop compression 
technologies
for their two latest Mars rovers!!! ;-)

link: http://upx.sourceforge.net/

3. Busybox (I think you already know about this one) is a collection of 
loads
of basic shell and network utilities, ash, vi, init and other stuff that
compiles into a single binary. It can help you create a 800 Kb root fs
(uncompressed, ~350-400K compressed).

link: http://www.busybox.net

4. uClibc - the micro impementation of GNU libc. It has a collection of
pre-compiled toolchains with all-ready gcc and header files. All in all, 
you
can produce much more minimal binaries with this one, The whole libc.so of
uClibc takes around 280K.

link: http://www.uclibc.org/

1+2+3+4 = For example: I compiled busybox in uClibc environment, compiled a
2.4.20 kernel, then UPXed both and got a 950Kb system (!).

Thanks a lot again for your guide and I really hope these two tips will 
help
you make it even better ;-) I myself wanted to write a micro-linux


Sincerely,
Artemio.

-- 
Artemio.net ::: world's official Artemio resource ::: http://artemio.net
[local time 16:24:45 (GMT +3) 1 June 2004] [system uptime 5 hr 46 min]





More information about the Pocket-Linux mailing list