Selecting a CPU and Related Options

As noted in the earlier section, "An Overview of Kernel Options," one of the main areas of the kernel configuration system is the Processor Type and Features menu. This menu includes options that can influence the efficiency of the kernel when run on particular systems:

Subarchitecture Type This option, which isn't available on 2.4.x kernels, tells the system which of several IA-32 designs the system uses. Most users should select PC-Compatible. Other options apply to exotic IA-32 computers that aren't compatible with standard IA-32

computers, such as some workstations from IBM and SGI.

Processor Family As described in Chapter 1, many different models of IA-32 CPUs are available from several different manufacturers. The Processor Family option lets you specify which of these models you use. Most Linux distributions use kernels optimized for the 386 family, which means that the kernels work on just about any IA-32 CPU, but with most CPUs, the kernel could run a tiny bit faster with another optimization. Some distributions (notably Mandrake) optimize all code for more sophisticated CPUs, and some others (such as Red Hat and SuSE) offer kernels precompiled for other CPUs.

SMP Support If your motherboard has more than one CPU, it's important that you select this option. If this option is not enabled, Linux will use just one of the CPUs, which is obviously not very efficient. If you enable this option when it shouldn't be enabled, the kernel will run on most, but not all, single-CPU systems, but won't run as quickly as it would if configured for single-CPU operation. In the 2.5.67 kernel, you can specify how many CPUs your system has after selecting this option.

Preemptable Kernel This option can improve the perceived responsiveness of a Linux system by enabling user-mode programs to preempt running low-priority processes even when those low-priority processes are performing kernel calls. Enabling this option is generally desirable on workstations or other systems that interact directly with users. This option is present in the 2.5.67 kernel but not in the 2.4.20 kernel.

High Memory Support This option changes the way the kernel maps physical RAM to the virtual memory spaces used by individual programs. Pick Off if your computer has 1GB of RAM or less, 4GB if the system has between 1GB and 4GB of RAM, and 64GB if the system has over 4GB of RAM. If you pick this final option, the kernel won't boot on CPUs that don't support Intel's Physical Address Extension (PAE) mode. In practice, you may need to select 4GB if you have over 896MB of RAM.

Math Emulation Floating-point units (FPUs), aka math coprocessors, perform floating-point (as opposed to integer) arithmetic, and Linux relies on this support to operate. Some very old CPUs (all 386, some 486, and some NexGen CPUs) lacked FPUs, and instead relied on optional FPUs that could be added separately. Not all such computers came with FPUs, and for the benefit of those that didn't, the Linux kernel provides an FPU emulator, which enables Linux to work on these systems. Omitting this support is the best choice on all modern computers, but the option is required if you have an ancient system that lacks a separate FPU. (If you add this support unnecessarily, it will go unused, but will make the kernel about 66KB larger than it needs to be.)

MTRR Support Many CPUs (Intel Pentium Pro and above, Cyrix 6x86 and above, AMD K6-3 and some K6-2 CPUs, and a few others) support a feature that Intel calls the Memory Type Range Register (MTRR). (Some manufacturers use other names for this feature.) This option can improve data transfers to video cards, but requires kernel support. Enabling this option can improve video performance if you have one of these CPUs. Enabling this option unnecessarily won't cause problems, except for increasing the kernel size by about 9KB.

Note Many CPU options vary depending on the CPU architecture (IA-32, PowerPC, etc.). This list emphasizes the IA-32 options, because they're the most common. Options on other architectures may be quite different.

Setting some of these options incorrectly can prevent your system from booting, as just described. Other options (most notably the SMP option if you have multiple CPUs) won't prevent the computer from booting if set incorrectly, but will impair performance. Some options, such as the Processor Family, might yield small performance boosts once set for your CPU. All of these options deserve at least some attention.

Was this article helpful?

0 0
The Ultimate Computer Repair Guide

The Ultimate Computer Repair Guide

Read how to maintain and repair any desktop and laptop computer. This Ebook has articles with photos and videos that show detailed step by step pc repair and maintenance procedures. There are many links to online videos that explain how you can build, maintain, speed up, clean, and repair your computer yourself. Put the money that you were going to pay the PC Tech in your own pocket.

Get My Free Ebook


Post a comment