Size: 4809
Comment:
|
Size: 4813
Comment:
|
Deletions are marked like this. | Additions are marked like this. |
Line 24: | Line 24: |
Line 25: | Line 26: |
Kernel
What is the kernel ?
The kernel is the software that directly manages your hardware, allowing application libraries and software like GNOME and Firefox to run on many types of hardware without much difficulty. Because the Linux kernel is the core component of a GNU/Linux system, a full restart is required to complete the kernel update.
Types
Ubuntu packages the Linux kernel for a variety of architectures, including several variants of the x86 architecture. These include a 386 version, a 686 version, and versions for the AMD k6 and k7 processors. While most software for x86 processors in Ubuntu is compiled for 386 or better instruction sets, the kernel and a few other packages are specifically compiled for certain processors for speed reasons. Check the package documentation to determine what type of kernel will perform best for your processor.
Versions
Ubuntu currently packages the 3.5 kernel for optimal desktop speed and features.
SMP
Some motherboards have more than one processor on them, and some processors have multiple cores. If your computer is like this, then the SMP kernel is for you. Non-SMP kernels will not be able to take advantage of your multiple processors. However, if you do not have multiple processors, the additional code in an SMP kernel will only slow you down. Naturally, Ubuntu provides both SMP and non-SMP kernels for all supported architectures.
PAE
PAE (Physical Address Extension) allows the 32 bit version of Ubuntu to access up to 64 Gb of memory, but it isn't enabled in the generic kernel. To enable PAE, install the server kernel. Please be advised that as of Ubuntu 12.04, PAE is the default kernel and generic has been dropped. For more on this, please see here. As per here and here, if one has hardware that does not support PAE, or you want to use a non-PAE generic kernel, you may use Xubuntu or Lubuntu.
HowTo Upgrade or Recompile Kernel
The precompiled kernels that are supplied with with your distro should be fine however if you wish to update or optimise (or standardise) for your platform :
From easier (1) to the more difficult (3):
1) You can UpgradeKernel easily using Ubuntu.
2) You can also Kernel/Compile it yourself from LinuxKernelSource or UbuntuKernelSource.
3) Run the following Terminal commands to install a new 32-bit Ubuntu kernel from http://kernel.ubuntu.com/~kernel-ppa/mainline/
sudo apt-get update
sudo apt-get install python-bs4
cd /tmp
rm -rf medigeek-kmp*
wget --no-check-certificate https://github.com/medigeek/kmp-downloader/tarball/master -O kmpd.tar.gz
tar xzf kmpd.tar.gz
cd medigeek-*
python kmpd.py -d
The script at https://github.com/medigeek/kmp-downloader/ does not seem to allow choosing amd64 (64-bit) architecture. It only allows installing i386 (32-bit) architecture. This seems like a bug to me. Just press <ENTER> instead of a number if you get stuck on a certain question in the python script.
How to Remove unwanted Kernels from your system
Open the Synaptic package manager from the System->Administration menu. Click the “Search” button on the tool bar and search for "linux-image-2". The results should show every available and installed kernel. A green box on the left indicates that the package is installed. The only linux-image you want installed is the latest one. Find the package corresponding to the kernel to you running currently (this is the kernel you found in the terminal window). Make sure you keep that one. Now you can uninstall the old kernels from the list by clicking their boxes and selecting “Mark for Removal”.
Experimental Kernel Options
As per the Ubuntu Kernel Team, their typical Kernel configuration policy is that options marked EXPERIMENTAL are disabled by default, until a request has been made to justify enabling it. For example, one may find out if an option is marked this way via:
config RT2800USB_RT35XX bool "rt2800usb - Include support for rt35xx devices (EXPERIMENTAL)" depends on EXPERIMENTAL default y ---help--- This adds support for rt35xx wireless chipset family to the rt2800usb driver. Supported chips: RT3572