Kernel

The kernel is Article description::the core of the operating system. Containing most of the device drivers, the kernel offers interfaces for programs to access system hardware such as memory, graphic cards, and block devices.

Though Gentoo has offered different kernels in the past, currently only the Linux kernel is supported.

Which kernel to install?
Gentoo provides a choice of methods to get a kernel up and running, from a standard binary kernel as would be supplied by most distributions, to custom configured and compiled kernels.

gentoo-sources
When manually compiling kernel sources, or using to automate some of the process, Gentoo recommends the  package for most users. Its stable versions follow the long term stable (LTS) kernels from upstream kernel.org.

Distribution kernels
The provides packages to install and manage kernels through. These kernels are complied (if needed) and installed with just an command, like any other package, which can lessen the administrative burden. Kernel updates are performed when updating the system (i.e. ), and the only manual step is to have the bootloader use the new kernel.

These kernels come with a default configuration that should "just work" for most systems. For users not interested in configuring their own kernel from scratch, these kernels can get things up and running quicker.

gentoo-kernel
The package provides a kernel that will be compiled and be installed when the package is emerged. This comes with a default configuration that should work out of the box on most systems, but allows customization, if desired.

gentoo-kernel-bin
The is a binary package containing a precompiled kernel, allowing faster installation. This package is a precompiled version of the gentoo-kernel package, with the default configuration.

Installation
This section covers installation when using.

USE flags
To obtain a kernel, it is necessary to install the kernel source code. The Gentoo recommended kernel sources for a desktop system are, of course,. These are maintained by the Gentoo developers, and patched when necessary to fix security vulnerabilities, functional problems, as well as to improve compatibility with rare system architectures.

Emerge
Now install :

Alternative kernels
Although all stable kernel Gentoo provides is, there are many other kernel packages in the Portage tree. See the Kernel sources overview article, which gives details on most of them.

For which to pick, see also the blog article What Stable Kernel Should I Use? by Greg Kroah-Hartman, a major kernel developer.

Searching all kernel packages
A full list of kernel sources with short descriptions can be found by searching with :

Configuration

 * : is a tool used to automate the build process of the kernel and initramfs. The goal of genkernel is to help users through the kernel building process.


 * : Manual configuration enables the user, with some effort, to create a custom-fit kernel configuration.


 * : Gentoo's kernel configuration guide.


 * : Instructions for hardening the kernel.


 * : Kernel modules are object files that contain code to extend the kernel.


 * : Describes various optimizations for the kernel, like performance.

Upgrade

 * : Steps to upgrade to a new kernel using an existing configuration.

Removal

 * : Steps to completely remove old kernels.

In-kernel configuration support
See the sub-article.

Kernel command-line parameters
When booting from a bootloader, the Linux kernel can accept command-line parameters to change its behavior. This can aid in troubleshooting the kernel at boot time, to blacklist a certain module that should not loading, etc.

Kernel.org has a nicely formatted list of available kernel command-line parameters in their admin guide.

Specifically, the following command-line parameters may be helpful when booting Gentoo:



External resources

 * planet.kernel.org - Blogs related to the Linux kernel.
 * kernelnewbies.org - A "community of aspiring Linux kernel developers who work to improve their Kernels and more experienced developers willing to share their knowledge".
 * kernel.org/doc/ - Official comprehensible documentation for the Linux kernel.
 * What Stable Kernel Should I Use?, written by Greg Kroah-Hartman.
 * Building the kernel as root can be harmful
 * The Linux Kernel Module Programming Guide