[Soekris] "thewall" project is dead??? [really small CF images]

M. Warner Losh imp at bsdimp.com
Fri Nov 15 20:04:21 UTC 2002

In message: <028801c28cd7$4ba6e000$52557f42 at errno.com>
            "Sam Leffler" <sam at errno.com> writes:
: > In message: <020601c28cca$16d2a060$52557f42 at errno.com>
: >             "Sam Leffler" <sam at errno.com> writes:
: > : However, the one question that I haven't resolved is whether or not it's
: > : better to use crunchgen or just stick to shared libraries (this is for
: > : freebsd).  Disk space isn't an issue.  I'm more concerned with memory
: > : footprint.  I suspect there are many other things to be more concerned
: about
: > : than shared libraries vs. crunch'd binaries but haven't had time to
: > : investigate (e.g. libc is known to be bloated).
: >
: > We've had very good luck with libc on our SBC based system.  We have
: > shared libc for everything and a bunch of tiny binaries in /sbin,
: > etc.  We've found that this makes upgrading a system much easier,
: > especially when we want to add just one more binary.  You don't have
: > to re-crunchgen the whole thing and can usually just copy the binary
: > from your development system over w/o any special care.
: >
: Yes, this is one of several reasons why you want to use shared libraries.
: But what do you see for runtime memory use of systems built with shared
: libraries vs. those built with crunchgen?

That's a good question.  I'd expect that we'd see a slightly slower
execution due to PIC stuff, and a comperable memory usage since most
of this code is shared.  Most of the memory usage in our systems is
swamped by the application, so I don't have hard numbers for crunchgen
vs non-crunchgen.  I suspect that it depends mostly on what apps are
always running...

On a 4.5 system, a static /bin and /sbin are 15274k, while dynamic
they are 2384k.  These use 1604k of shared libraries, although the
vast majority of shared libaries are used only by a couple of
programs and will often not be present on the installed system.  Our
installed systems have 500k /bin and 607k /sbin on them since we don't
need, for example, vinum configuration, ccdconfig, etc.  Our /usr/lib
is only 2720k, but that includes a bunch more libraies than are needed
for a minimal boot.  The base flash that we produce is on the order of
8M, but the bare minimum required to boot with the stock /etc/rc files
is more like 5-6M.  I was unable to get a bootable system on a 4M DOC
part I have when I got a day to play with it a while back (and that
was on 3.4).


More information about the Soekris-tech mailing list