Re: Linux x86-32 addr space split

From: Josef Moellers (josef.moellers_at_fujitsu-siemens.com)
Date: 02/02/05


Date: Wed, 02 Feb 2005 09:20:11 +0100

Mosa Atilles wrote:
> I've been testing linux 2.6 kernels from some time on x86 32-bit
> machines. But could not quite get the reason behind the need to split
> the process address space as 3GB + 1GB (other combinations as well)
> between kernel and process-usable ones. Specifically, what is the need
> for PAGE_OFFSET?

The advantage is that the kernel will have the current process' address
space as part of its own address space. In a large number of cases, this
makes expensice copies between separate address spaces (user<->kernel)
unnecessary.
Note To stay portable, one should nonetheless use the appropriate
functions/macros when copying between user and kernel space, even if
they will then just to a copy.

-- 
Josef Möllers (Pinguinpfleger bei FSC)
	If failure had no penalty success would not be a prize
						-- T.  Pratchett

Quantcast