memory.txt 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. There are several classic problems related to memory on Linux
  2. systems.
  3. 1) There are some buggy motherboards which cannot properly
  4. deal with the memory above 16MB. Consider exchanging
  5. your motherboard.
  6. 2) You cannot do DMA on the ISA bus to addresses above
  7. 16M. Most device drivers under Linux allow the use
  8. of bounce buffers which work around this problem. Drivers
  9. that don't use bounce buffers will be unstable with
  10. more than 16M installed. Drivers that use bounce buffers
  11. will be OK, but may have slightly higher overhead.
  12. 3) There are some motherboards that will not cache above
  13. a certain quantity of memory. If you have one of these
  14. motherboards, your system will be SLOWER, not faster
  15. as you add more memory. Consider exchanging your
  16. motherboard.
  17. All of these problems can be addressed with the "mem=XXXM" boot option
  18. (where XXX is the size of RAM to use in megabytes).
  19. It can also tell Linux to use less memory than is actually installed.
  20. If you use "mem=" on a machine with PCI, consider using "memmap=" to avoid
  21. physical address space collisions.
  22. See the documentation of your boot loader (LILO, loadlin, etc.) about
  23. how to pass options to the kernel.
  24. There are other memory problems which Linux cannot deal with. Random
  25. corruption of memory is usually a sign of serious hardware trouble.
  26. Try:
  27. * Reducing memory settings in the BIOS to the most conservative
  28. timings.
  29. * Adding a cooling fan.
  30. * Not overclocking your CPU.
  31. * Having the memory tested in a memory tester or exchanged
  32. with the vendor. Consider testing it with memtest86 yourself.
  33. * Exchanging your CPU, cache, or motherboard for one that works.
  34. * Disabling the cache from the BIOS.
  35. * Try passing the "mem=4M" option to the kernel to limit
  36. Linux to using a very small amount of memory. Use "memmap="-option
  37. together with "mem=" on systems with PCI to avoid physical address
  38. space collisions.
  39. Other tricks:
  40. * Try passing the "no-387" option to the kernel to ignore
  41. a buggy FPU.
  42. * Try passing the "no-hlt" option to disable the potentially
  43. buggy HLT instruction in your CPU.