On 04/24/2012 02:35 PM, Ezequiel García wrote: > Hi, > >> Linux in under 2 megabytes of RAM, even when running from ROM, is not a >> realistic goal. For context: linux 0.0.1 was developed on a 4 megabyte >> system in 1991. Swap support was added in december of that year so it >> could run on a 2 megabyte system. >> > > After some research I came to the same conclusion. I guess I was on > drugs when I tought that, > since even a kernel compiled with almost nothing (not even BUG > support) weights ~1.5 MB.
I do note that this is inexcusable. The kernel _DID_ once run in 2 megabytes of ram, and 4 should still be a realistic goal for a tiny linux project of the busybox/toybox plus uClibc userspace kind. (Admittedly the last 4 meg linux system I saw was a uClinux circa 2006 at CELF, I think it might have been Grant Likely demoing it? > It seems Linux is not aiming that low after all, however a little > effort to try to un-bloat the current > state of things can't hurt, right? There's plenty of low hanging fruit, yes. But I think linux-tiny is actually going about it all wrong. My rant on the subject is here: http://www.mentby.com/rob-landley/what-happened-to-linux-tiny.html If I had spare time (not at present) I could look at u-boot and this: http://balau82.wordpress.com/2010/02/28/hello-world-for-bare-metal-arm-using-qemu/ And I'd assemble a catalog of hello world kernels with the standard code to switch into protected mode (set up page tables, turn on the cache, etc) and then print "hello world" via early_printk(). And then porting chunks of linux to this in a granular way, with appropriate cleanups, would be something other people could help with. :) I'd probably browbeat the device tree guys into helping me because this should be entirely device tree based from day 1. Pretty much the FIRST thing you add after "hello world" is a device tree parser, because that tells you how much memory you've got and where it is. :) > Thanks, > Ezequiel. Rob -- GNU/Linux isn't: Linux=GPLv2, GNU=GPLv3+, they can't share code. Either it's "mere aggregation", or a license violation. Pick one. _______________________________________________ Celinux-dev mailing list Celinux-dev@lists.celinuxforum.org https://lists.celinuxforum.org/mailman/listinfo/celinux-dev