Slow Booting/Perfomance Running Linux


Linux kernel can sometimes cause performance problems such as slow or no booting, hanging up during boot or slow performance during normal operation. The performance issue can affect both Single Board Computers (SBC) or desktop computers and workstations which have 1GB or greater memory installed.


There are two methods available to resolve the large memory issue. The first and easiest is by adding a parameter to the boot line limiting the amount of memory seen by the kernel. You can use the Temporary Resolution to determine what work best for the system, and then make that change permanent.

The second method involves recompiling the kernel, a 30 step process. It is recommended that only advanced users do this as a last resort. A separate article i025100 details the steps needed to recompile the kernel.

Temporary Resolution:  To test whether the issue can be resolved with a simple boot parameter modification do the following: [Note: If change is not made permanent, you will have to do this each time you boot]

  1. When the boot loader comes up, press the "a" key. This will allow you to add additional parameters into the boot command.
  2. Highlight the line that begins with    "kernel...." and press the "e" key to edit that line.
  3. Move to the end of the line, and making sure there is a space after the last character type the following:  "mem=_ _ _M" (where _ _ _ is a number less than 960)
  4. Recommended number is 768 to start.
  5. Press "b" key to boot.

If all works as expected, the computer should now boot normally and suffer no performance degradation. You can then modify the "mem=...." parameter, adjusting to get the best performance while maximizing memory available. 

To make the change permanent you can use Konqueror or whatever you prefer to get to: /boot/grub . There you will see a file named "menu.lst". Use whatever is convenient for you (and easy way to do it if you run KDE is to use Kwrite) to open and edit that file.

After some comment lines at the top, you should see the same lines that you see in the grub screen when booting. As you did for the temp fix, find the line that begins with kernel, move to the end and as before, insert your mem= making sure there is a space between the end of the line and your mem=.

Save the file, and the change will be permanent. If you reboot after saving you should see the change on the grub screen.