[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <200806041251.43432.rob@landley.net>
Date: Wed, 4 Jun 2008 12:51:42 -0500
From: Rob Landley <rob@...dley.net>
To: Adrian Bunk <adrian.bunk@...ial.fi>
Cc: Tim Bird <tim.bird@...sony.com>,
linux-embedded <linux-embedded@...r.kernel.org>,
linux kernel <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH] console - Add configurable support for console charset translation
On Wednesday 04 June 2008 05:33:53 Adrian Bunk wrote:
> Does the linux-tiny approach of adding a kconfig variable for each 5kB
> of code actually make sense? I'm asking since an exploding amount of
> kconfig variables and their interdependencies have a not so small
> maintainance impact in the long term.
Complexity is a cost, you have to get good bang for the buck when you spend
it.
> And I'm wondering whether it's the best approach for reaching
> measurable results.
When I first started stripping down systems to make embedded masquerading
routers back in the late 90's (before linksys came out), I started with a Red
Hat install and removed lots and lots of packages. That's the approach we're
taking today, and I can say from experience that it's not sustainable.
I then wandered to a Linux From Scratch approach, building a system that had
nothing in it but what I wanted. Starting from zero and adding stuff, rather
than starting from Mt. Crapmore and removing things until the shovel broke.
Someday I want to do the same for the Linux kernel. When I started building
systems instead of carving them out of blocks of distro, I started with
a "hello world" root filesystem, and I want to make a "hello world" kernel.
Start with just the boot code that does the jump to C code, only instead of
start_kernel() in init/main.c have it call a hello_world() function that
prints "hello world" to the console using the early_printk logic, then calls
HLT. And does _nothing_else_. Then add stuff back one chunk at a time,
sstarting with memory management, then the scheduler and process stuff, then
the vfs, and so on. So I know what all the bits do, and how big and
complicated they are. And I can document the lot of it as I go.
Unfortunately, as a learning experience, I estimate this would take me about a
year. And I haven't got a spare year on me at the moment. But it remains
prominently on my todo list, if I decide to start another major project.
(Maybe after I get a 1.0 release of FWL out.)
> My gut feeling is that the influence of this kind of linux-tiny patches
> is hardly noticably compared to the overall code size development, but
> if you have numbers that prove me wrong just point me to them and I'll
> stand corrected.
The whackamole approach is never going to turn Ubuntu into Damn Small Linux,
and it ignores the needs of the people who don't want the /proc hairball but
_do_ want a ps that works.
Rob
--
"One of my most productive days was throwing away 1000 lines of code."
- Ken Thompson.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists