Virtual Memory in the IA-64 Linux Kernel - 2 | Search for a title, author or keyword | ||||||||
Virtual Memory in the IA-64 Linux Kernel - 2 By Stephane Eranian and David Mosberger, 2002. From: IA-64 Linux Kernel: Design and Implementation. The virtual address space of any Linux process is divided into two subspaces: kernel space and user space. As illustrated on the left-hand side of Figure 4.4, user space occupies the lower portion of the address space, starting from address 0 and extending up to the platform-specific task size limit (TASK_SIZE in file include/asm/processor.h). The remainder is occupied by kernel space. Most platforms use a task size limit that is large enough so that at least half of the available address space is occupied by the user address space. User space is private to the process, meaning that it is mapped by the process's own page table. In contrast, kernel space is shared across all processes. There are two ways to think about kernel space: We can either think of it as being mapped into the top part of each process, or we can think of it as a single space that occupies the top part of the CPU's virtual address space. Interestingly, depending on the specifics of CPU on which Linux is running, kernel space can be implemented in one or the other way.
|
|||||||||
Virtual Memory in the IA-64 Linux Kernel - 2 | Disclaimer: this link points to content provided by other sites. |