Linux: Using 1GB of RAM Without HighMem

Posted by bstadil on Jan 13, 2006 7:55 PM EDT
KernelTrap
Mail this story
Print this story

Jens Axboe began anlkml thread saying, "it does annoy me that any 1G i386 machine will end up with 1/8th of the memory as highmem." He then provided a patch that adds a kernel configuration option to control how memory is divided among kernel space and user space

[story]. The new option explains that accessing high memory is a little more costly than accessing low memory, as high memory needs to be mapped into the kernel first. The patch had an informative and interesting evolution, receiving much feedback including suggestions from both Linus Torvalds and Ingo Molnar [interview]. Toward the end of the thread, Jens explained in more detail what the kernel option provides:

"Basically the option boils down to how much virtual address space you want to assign to the kernel and user space. The kernel can always access all of memory, but in some cases part of that memory will be available as high memory that needs to be mapped in first (see references to kmap() and kmap_atomic() in the kernel). So whether changing the mapping or using highmem is the best option for you, depends entirely on what you run on that machine. If you require a huge user address space, then you don't want to change away from the 3/1 user/kernel default setting. However, if you don't need the full 3G of adress space to user apps, then you are better off increasing the kernel address space range to get rid of the high memory mapping."

Full Story

  Nav
» Read more about: Story Type: Interview; Groups: Kernel

« Return to the newswire homepage

This topic does not have any threads posted yet!

You cannot post until you login.