Understanding Linux Kernel Versions

Understanding Linux Kernel Versions
Page content

Linux kernel versions reveal basic, but very significant information about the core of the open source Linux operating system. The kernel is under constant development as numerous programmers worldwide fix bugs, add features, and code for new technology. It’s interesting to note that Linus Torvalds, the creator of Linux, is still the final authority on any new code that is to be incorporated into the standard kernel. He also writes approximately 2% of the code which is a significant contribution to the world of open source software. A standard system must be used to let developers and users know the state of the exact version of kernel with which they’ll be working as a programmer or a user. Although this information is usually of more significance to developers, users also need to at least know what things to look for when choosing a distribution which is always based on some version of the kernel.

There are at least three sections to Linux kernel versions. In the screen shot below you can see the version used for Fedora 8 which is 2.6.23.1-42.fc8. The first number (2) indicates the major version number, the second number (6) indicates the minor version number, and the third sublevel number (23) refers to the current iteration of the kernel. You’ll also notice that there’s a 42.fc8 at the end. The 42 is what’s known as an extra-version level that represents a collection of patches and add-ons contributed specifically by Red Hat engineers. If you use a distribution other than Fedora, you will not see fc8. To display the kernel version of your distribution on a command line, simply open a terminal window and type uname -r and then press enter. You should not need to become root for this operation.

When looking at Linux kernel versions, the minor number is often of the most importance in a decision for or against the release of a particular distribution. If the number is even, the kernel is considered stable; if it is odd, the kernel is a development release. If you are new to Linux, need a system for reliable home use, or are about to deploy a system for production, you might want to avoid distributions based on a development release. This doesn’t mean that these versions of the kernel won’t work; the minor number simply alerts you to the fact that it might be a good idea to limit these releases to machines for testing. Another reason someone might choose a development release over a stable kernel is because sometimes software or features they want aren’t available in the stable kernel. Whatever your decision is, it’s always better that it be an informed one to avoid unpleasant surprises and inexplicable problems that could occur with odd-numbered minor versions.

Keep in mind that Linux kernel versions with higher numbers are not necessarily better. They could have just as many, if not more bugs and may offer fewer features than older versions. They might even work in a way that you don’t like. For example, Fedora Core 4 didn’t require an Internet connection to install additional software. The installation disc itself behaved like a local repository. This changed in Fedora 5 (“Core” is no longer part of the name). This was most unwelcome for dial-up users. Although, such a set-up can be modified to return to the old way of using the installation discs as a local repository without any Internet connection, Linux newbies probably would not be comfortable with doing the steps involved. When considering Linux kernel versions, also keep in mind that the release number of the distribution is not to be confused with the version of kernel on which it was based. These are two separate things.