< Day Day Up > |
The version number for a Linux kernel consists of three segments: the major, minor, and revision numbers. The major number increments with major changes in the kernel. The minor number indicates stability. Even numbers are used for stable releases, whereas odd numbers are reserved for development releases, which may be unstable. New features first appear in the development versions. If you're concerned about stability, you should wait for the stable version. The revision number refers to the corrected versions. As bugs are discovered and corrected, and as new features are introduced, new revisions of a kernel are released. A development kernel may have numerous revisions. For example, kernel 2.4.22 has a major number of 2 and a minor number of 4, with a revision number of 22. Distributions often add another number that refers to a specific set of patches applied to the kernel. For example, for Fedora Linux, the kernel is 2.4.22-1, where 1 is the patch number. On distributions that support RPM packages, you can use an RPM query to learn what version is installed, as shown here:
rpm -q kernel
You could have more than one version of the kernel installed on your system. To see which one is running currently, you use the uname command with the -r option (the -a option provides more detailed information).
uname -r
New kernels are released on two different tracks, a stable track and a development track. Stable kernels have an even revision number, whereas development kernels use an odd number. The stable kernel would be 2.4, and its development kernel 2.5. Often, development kernels, though unstable, include support for the most recent hardware and software features. However, unless you are experimenting with kernel development, you should always install a stable version of the kernel.
The Linux kernel is being worked on constantly, and new versions are released when they are ready. Distributions may include different kernel versions. Red Hat includes the most up-to-date stable kernel in its releases. Linux kernels are available at kernel.org. Also, RPM packages for a new kernel are often available at distribution update sites. One reason you may need to upgrade your kernel is to provide support for new hardware or for features not supported by your distribution's version. For example, you may need support for a new device not provided in your distribution's version of the kernel. Certain features may not be included in a distribution's version because they are considered experimental or a security risk.
Tip |
In many cases, you probably don't need to compile and install a new kernel just to add support for a new device. Kernels provide most device support in the form of loadable modules, of which only those needed are installed with the kernel. Most likely, your current kernel has the module you need; you simply have to compile it and install it. For this task, see the "Installing New Modules for the Kernel" section in Chapter 32. |
You can learn more about the Linux kernel from kernel.org, the official repository for the current Linux kernels. The most current source code, as well as documentation, is there. Your distribution Web site will also provide online documentation for installing and compiling the kernel on its systems. Several Linux HOW-TOs also exist on the subject. The kernel source code software packages also include extensive documentation. Kernel source code files are always installed in the /usr/src/linux-version directory, where version is the kernel version, as in /usr/src/linux-2.4. In this directory, you can find a subdirectory named /Documentation, which contains an extensive set of files and directories documenting kernel features, modules, and commands. The following listing of kernel resources also contains more information:
kernel.org The official Linux kernel Web site. All new kernels originate from here.
www.linuxhq.com Linux headquarters, kernel sources, and patches.
kernelnewbies.org Linux kernel sources and information.
www.tldp.org The Linux Documentation Project.
< Day Day Up > |
This HTML Help has been published using the chm2web software. |