So today I played with linux-lite. A slightly modified linux-1.0.9.
It looks like you can get a pretty useable kernel out of it in about
128K, after compression.
I have built up 2 patches
.eb1 This allows the code to compile with gcc-2.95.2 (hopefully the code works).
.eb2 This patch enables compiling out large sections of the kernel
like the VFS layer, so I can experiment and see where the kernel
bloat is. I don't understand why the linux kernel when you disable
everything is much larger than linuxBIOS.
The code is available at:
ftp://download.linuxnetworx.com/pub/src/linux-kernel-patches/
Even when I compile out the VFS layer, and the network stack, swap
support, and mmap, all character and block devices. Uncompressed
the linux kernel is still about 100KB. It feels like there is a
significant source of bloat there. My hope is to build a very modular
kernel without nearly zero bloat and then port the infrastructure up
to the latest kernels. Linux 1.0 is very much linux in structure, so
if nothing else it should be able to serve as a good comparision
point.
Anyway. A kernel with nothing in it that compresses to 47KB is kind
of fun :)
Eric
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/