Re: Automatic Configuration of a Kernel

From: David Lang
Date: Thu Sep 15 2005 - 05:30:21 EST


On Wed, 14 Sep 2005, Lee Revell wrote:

On Wed, 2005-09-14 at 19:03 -0700, David Lang wrote:
another advantage of having an auto-config for the kernel is that people
who are experimenting may have the auto-config find hardware that they
didn't realize they had (or they didn't realize that support had been
added)

I know that most of my kernels don't have support for everything the
motherboards have on them (mostly I don't care much about the other
features, but in some cases they weren't supported, or weren't worth the
hassle of figureing the correct config for when I started, and I've never
gone back to try and figure it out)

Why does this have to be in the kernel again? Isn't this exactly what
you get with a fully modular config and hotplug?

I happen to be one of those crazy people who believe that there are advantages to building non-modular kernels.

1. they compile faster

2. they use less memory (if tightly configured) as each module loaded will average a 1/2 page of wasted memory

3. it's far easier to moveone file around then a file and a directory tree of modules

4. the non-modular kernel will be slightly faster (all calls to modules must be far calls, if it's not modular the compiler can optimize some of the calls)

5. once kmem and mem can be made read-only there is a security advantage in not having kernel modules available (yes the machine can be rebooted into a new kernel, but that's easier to detect then a module getting loaded)

6. the kernel takes less space on disk (matters in embedded devices and other places where your media is small)

none of this matters if you're dealing with a large desktop system that you are installing from a series of CD/DVD disks from a top-5 distro, but that's not the entire world

note that a good autodetect routine will have no impact on the kernel once it's compiled, it just generates a .config file.

I believe it makes more sense to have this be part of the kernel source distro then a seperate project as it needs to have a lot of knowledge about what a particular kernel supports and that's going to change from release to release.

David Lang

--
There are two ways of constructing a software design. One way is to make it so simple that there are obviously no deficiencies. And the other way is to make it so complicated that there are no obvious deficiencies.
-- C.A.R. Hoare
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/