Query regarding Kernel Space Memory
vishu.kernel at gmail.com
Tue Feb 24 11:39:51 EST 2015
In linux kernel space memory, on a system having 1G/3G address
space division, the 0--3G address space is for user process whereas,
~ 3G+1--4G is for the kernel space.
When i visualize this whole, on 32 bit architecture, what i see,
basically,is both a userland and a kernel space processes, are , in fact
just processes with compiler generating code for 4G address space.
However,address range for a kernel code is restricted to 3G+1---4G address
space, whereas for userland code it is between 0--3G.
Then, as far as my understanding is, this is something which is done by
linker/ loader. Which means, all the address generated for the kernel code,
is relocated to 3G+1-4G address space by the linker/ loader, whereas all
the address generated by the userland code is relocated to the 0-3G address
This implies, kernel virtual address is always between 3G+1 -- 4G range on
system which employ 1G/3G division rule.
Can somebody confirm about this understanding?
Any flaw here ??
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Kernelnewbies