>... " modifies RedHat in many specific ways to provide the best possible >portable Linux distribution. These include a customized kernel (half the size >of distribution kernels) " ...
>So my questions are these:
>1. How can the kernel be cut in half?
>2. What would be removed, or diminished, to achieve half-size kernels?
>3. If this is possible, why doesn't RedHat do it?
The kernel can be reduced by simply not adding so much to it. For example, if a machine is non-networked, IDE-only, and has no sound card (or proprietary CDROMs that might go with such a sound card), I could recompile the kernel leaving all of that code out. The kernel is modular as far as I/O (types of CDROMs, SCSI vs IDE, mouse input, keyboard input, etc), networking (Proxying, PPP, SLIP, network cards, etc.), sound (card types, MIDI, FM/synth), and so on.
Most things can be compiled as "modules", meaning they are left out of the kernel and loaded on an as-needed basis after the kernel is booted. Some items have to be compiled into the kernel (like SCSI if your root drive is a SCSI drive), but most things can be module's.
RedHat probably allows the default kernels to be somewhat gargantuan so that they work with lots of stuff. If they know your machine hardware they could pare it down, but since the PC world can have wildly varying hardware combinations, the default kernel needs to recognize the multitude of mice, network cards, sound cards, blah blah -- you get my point.
So, if you have a standard hardware setup and want to make a slim and trim kernel for it, it is really no problem. And providing things are exactly the same between systems, that kernel can be copied across the machines and used without having to re-compile on each (LILO would still need to be run on each to point to the new kernel).
JoeK
Previous
Next
Reply
View the map of this thread
View the map of this thread starting from this message only
View all messages of this thread
View all messages of this thread starting from this message only