Chapter 16. Building a Custom Kernel

Many people new to Linux often ask, "why should I build my own kernel?" Given the advances that have been made in the use of kernel modules, the most accurate response to that question is, "unless you already know why you need to build your own kernel, you probably do not need to."

In the past, you had to recompile the kernel if you added new hardware on your system. In other words, the kernel was static. Improvements in the Linux 2.0.x kernels allowed for many hardware drivers to be modularized into components that are loaded on demand. However, major problems existed when users had multiple kernels that had been compiled for different configuration options on their system; for example, SMP versus UP kernels. Further Linux 2.4.x kernel modularization advancements allow for multiple kernels to co-exist more easily, but they can not share modules.

For information on handling kernel modules see the section called Loading Kernel Modules. Unless you are recompiling a customized kernel for your system, you will not see many changes in how kernel modules are handled.

The 2.4 Kernel

Red Hat Linux now ships with the 2.4 kernel. Here are the highlights of the 2.4 kernel as shipped with Red Hat Linux: