Home | Hardware | Internet News |Web Hosting |IT Management |Network Storage
LinuxPlanet
Search 
  Power Search | Tips 

 Front Door
 Discussion
 LinuxEngine
 Opinions
 Reports
 Reviews
 Tutorials
 News
 Technology Jobs

 Browse by subject.
Free Newsletter

Linux Planet
Linux Today
More Free Newsletters

Be a Commerce Partner


















internet.com
IT
Developer
Internet News
Small Business
Personal Technology

Search internet.com
Advertise
Corporate Info
Newsletters
Tech Jobs
E-mail Offers

Print this article
Email this article

   LinuxPlanet / Tutorials







Building Your Own Linux Kernel: Tricky kernel options (part 3)
IO Schedulers, Processors, Power Management

Akkana Peck
Thursday, October 22, 2009 11:32:09 AM

After the last article, you've built a custom kernel, turning off some options you don't need and maybe reducing the number of modules. But some of the options in the kernel configuration are confusing! Today I'll try to clarify some of the places where it's easy to go wrong.

Block Layer: IO Schedulers

Under "Enable the block layer" lies an option you probably wouldn't think to look at: "IO Schedulers". That's obviously some kind of übergeeky option that only a kernel developer would care about, right?

Well, mostly true. But if you're on a netbook, there's a hidden option you should know about: the No-op scheduler.

IO schedulers manage disk reads and writes to try to reduce the number of times the disk head has to move. But with a solid-state drive, there's no disk head, and all this smart scheduling can actually hurt performance.

Under IO Schedulers --> Default I/O scheduler, you'll see an option for the "No-op" scheduler (Figure 1). If your main disk is solid-state, try it. You may see an improvement.

figure 1
figure 1

You can even enable it at runtime for a single disk:

# cat /sys/block/sda/queue/scheduler
noop anticipatory deadline [cfq]
# echo noop > /sys/block/sda/queue/scheduler
[noop] anticipatory deadline cfq

Processor type and features

This option group is fairly straightforward, but there are a few options worth noting.

"Tickless System" lets the system set timer interrupts only as needed, rather than at every clock cycle. This can really help with laptop battery life. You also need it if you run performance measurement apps like powertop.

"Symmetric multi-processing support" is needed for machines with multiple CPUs. You'll also want it if you have a "hyperthreaded" CPU, like an Atom.

"Processor family" lets you build a kernel that may run a bit faster on your specific processor. Most people don't see much difference in practice. If you enable this but upgrade hardware often, you might want to turn on "Generic x86 support" as well, so you'll be able to run your kernel on any x86 machine.

I mentioned "High Memory Support" in the last article -- remember, if you have 4GB you may need to set it to 64GB.

Power management and ACPI options

ACPI is how modern x86-based machines do power management. APM is an older standard. Unless you have a very old machine (older than 7 years), you can probably turn off APM and use only ACPI. If your machine has trouble suspending, either to disk or to RAM, or it doesn't respond appropriately to the power button or can't read the battery level, ACPI is the category to check.

Next: Networking, ATA, SATA/PATA and SCSI »

Skip Ahead

1 IO Schedulers, Processors, Power Management
2 Networking, ATA, SATA/PATA and SCSI
figure 1
figure 1





Linux is a trademark of Linus Torvalds.


internet.com home | search | help! | about us

Jupiter Online Media

internet.comearthweb.comDevx.commediabistro.comGraphics.com

Search:

Jupitermedia Corporation has two divisions: Jupiterimages and JupiterOnlineMedia

Jupitermedia Corporate Info


Legal Notices, Licensing, Reprints, & Permissions, Privacy Policy.

Web Hosting | Newsletters | Tech Jobs | Shopping | E-mail Offers