From what I know of Linux, the address space on an Intel machine is split into 3GB for the user and 1GB for the kernel. What I would like to know is how the operating system handles interaction between the two address spaces. I know that a 48-bit pointer is needed, etc, but not how its handled within the C source code of the kernel...and I haven't been able to find anything on it in kernel sources. If anyone could tell me how this is done I would be very happy. Thanks, Andrew Sampson (aspiring programmer) |