Kernel configuration options

david at lang.hm david at lang.hm
Thu Jan 3 12:59:32 EST 2008


one good reason to avoid modules where we cn is that each module that gets 
loaded wastes a partial page of memory (arguably ~2k/module on average), 
on a system with only 256M ram this can add up to be a noticable amount of 
memory lost if you go the route some advocate and make everything a 
module.

and given that there is only 1G of 'disk' available to the system to store 
modules, I would argue that trying to provide modules for all sorts of 
esoteric hardware (USB video was mentioned) is a waste of resources.

make the other modules available for download and installation as needed, 
but don't eat up the space otherwise

modules are useful for when you have hardware that's used very 
infrequently and the driver is fairly large, but I don't think that there 
are many cases where this is a good argument.

I've always built my kernels as monolithic as possible, even for my 
laptops, so I know that it can be done (except a few drivers that need to 
load firmware). while there are some (vocal) kernel developers who feel 
that the kernel shouldn't even understand disk partitioning, and that 
everything should be a module, there are many others who feel that the 
kernel should not require external assistance for simple situations.

Linus has commented that he also builds his kernels monolithic rather then 
with lots of modules, so we're in good company if we choose to do the 
same.

<rant>
I haven't compiled my own kernels for the XO yet, so I don't know how much 
can be tweaked to reduce the size, but it looks like there is some room 
for tweaking. however, the biggest benefits look like they would be in 
cleaning up the userspace boot process. there is a _lot_ of stuff started 
that may not be needed in the stable hardware environment of the XO laptop 
where there is really only one program active at a time (dbus comes to 
mind)

remember that XO is based on Fedora, which is designed for maximum 
features and flexibility, not for efficiancy. This translates into poor 
performance for the user.

I know that the XO has a slow CPU, but I just recently retired a 333MHz 
laptop that I was running Slackware on, and it was far more responsive 
then the XO is (even with a faster CPU and a solid-state drive). there is 
a LOT of room for improvement here.
</rant>

David Lang


More information about the Devel mailing list