Re: >3G Memory support

Brian Gerst (bgerst@didntduck.org)
Thu, 20 Jun 2002 10:42:53 -0400


devnull@adc.idt.com wrote:
>>>When i compiled my kernel, i set CONFIG_HIGHMEM4G.
>>>
>>>Does this mean that all my programs should be able to address 4G ?
>>
>>No. It means the kernel can access all 4GB of memory. For memory above
>>the 950MB that it can directly map, it needs to use dynamic mappings
>>(kmap). User space is always 3GB virtual space per process, regardless
>>of the highmem setting.
>
>
> Is there a way to make a process in the user space to able to access 4GB
> at all.

Not all at one time, but you can map/unmap shared memory segments to
access more memory.

> What limits user space to 3GB.

Hardware limitations imposed by the x86 architecture. The x86 only has
_one_ virtual address space, which has to be shared by user space and
kernel space. It is not possible to give user space more virtual
address space without taking it away from the kernel.

> If not in current 2.4.x / 2.5.x, is this something planned in the future
> releases ?

Support for 64-bit processors like Intel Itanium and AMD Hammer
processors which do not have such limitations.

--
				Brian Gerst

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/