Non-Stable Kernels

From LQWiki
Jump to navigation Jump to search

A non-stable kernel is a kernel which is still a work in progress and software development on it is practically happening before your eyes. Do you need it? Most people do not need to download and compile or install a new kernel if their existing distribution's kernel is doing everything they need to have done. Having said that, though, maybe you would still be interested to see why you might choose a non-stable kernel.

Why consider a non-stable kernel?

  1. Downloading, compiling and installing a new kernel is considered by some as a "rite of passage" along the path from newbie to grasshopper student to Linux guru.
  2. You might wish to optimize your kernel by removing services, protocols, and devices which are unneeded. The concept is that the kernel is smaller, runs faster because there aren't so many branches in the code, and with fewer "moving parts", is less likely to experience a problem. Removing optional code also may be a minor protection against hackers who might exploit an obscure issue in a specific routine.
  3. You might wish to include a new service, device, or protocol in your current code which otherwise meets your needs. If things ain't broke, maybe you don't want to fix them... but at the same time, you want to include or experiment with this new feature from a newer kernel.
  4. Finally, you may just want to see the new features under development, try them with your own hardware, or experiment generally. Probably the keywords here would be "Pour l'amour ou pour le sport" (Roughly -- for love or just for the fun of it!)

Why avoid a non-stable kernel

The very name is the clue: it is NOT stable and can easily crash your PC. So (obviously or not so obviously) unless you are quite competent, you should not even consider using a non-stable kernel for a computer on which you are relying, such as running a business on it. The exception would be if you were competent enough and wanted to pull out a new service which is present in working form in the development kernel, but not part of your existing kernel. It may be important to backup your system.

How to identify whether a kernel is stable or non-stable

Kernels are identified by their numbering scheme. Here are the basics: if you go to a mythical distribution website and find four possible kernels named 3.8, 3.9.2, 3.10-test2, and 3.10.15ac, then which one would you choose to download and what do the numbers mean. In our hypothetical example, "3.8" is the latest *stable* kernel version because the second digit "8" is even. Use it for production, reliable systems. Kernel "3.9.2" is a development kernel because the second digit is an odd number. The third digit "2" indicates version two of the 3.9 development path. The next one "3.10-test2" is somewhat like a "release candidate" in Microsoft-speak -- this is the second version being tested to see if it will become version 3.10. And finally, 3.10.15ac means a temporary version that Alan Cox has released without Linus Torvald's specific sign-off, perhaps to plug some security hole in an emergency. It might only be there for a little while until the next regular development version comes out. So bottom line: if the second digit is even, then it is a stable kernel. If the second number is odd, then it is a non-stable kernel.