[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