Re: A reduced Linux network stack for small systems
[Posted May 7, 2014 by corbet]
| From: |
| One Thousand Gnomes <gnomes-AT-lxorguk.ukuu.org.uk> |
| To: |
| David Laight <David.Laight-AT-ACULAB.COM> |
| Subject: |
| Re: A reduced Linux network stack for small systems |
| Date: |
| Wed, 7 May 2014 14:20:47 +0100 |
| Message-ID: |
| <20140507142047.46012957@alan.etchedpixels.co.uk> |
| Cc: |
| "'Andi Kleen'" <andi-AT-firstfloor.org>, "netdev-AT-vger.kernel.org" <netdev-AT-vger.kernel.org>, "linux-kernel-AT-vger.kernel.org" <linux-kernel-AT-vger.kernel.org>, "tom.zanussi-AT-linux.intel.com" <tom.zanussi-AT-linux.intel.com> |
| Archive‑link: | |
Article |
> You may want some size reduction to run in 16MB, but it is not as problematic
> as running in 2MB.
>
> With that little memory I wouldn't want to run anything that relied on
> dynamic memory allocation (after startup) - except for fixed size data
> buffers.
You mean like µhttpd 8) Been there, done that and Tom in fact sent me the
patches to port it to Linux from 2.11BSD PDP/11.
You can do a lot in a very small space. Heck you can run a full 2.11BSD
on a PDP/11 in 1MB, including network stack. You used to be able to build
a full self hosting Linux 1.x on a 4MB 386.
If you are using glibc and GNU tools it isn't going to work, but long ago
tools were written which just did the job they were supposed to do at the
time and were small and tidy. Programmers were expected to use shell
scripts to combine them for harder jobs rather than be the one person a
year who invoked gnu-wibble --format-sideways-while-singing
--tune=waltzing-matilda
Alan