On 3/22/07, Prasad Joshi <prasadjoshi124@xxxxxxxxx> wrote:
3/21/07, Vivek <vivekutal@xxxxxxxxx> wrote: > > Why is kernel restricted to use virtual addresses of only 1 GB? Or > > what is the need to split up the virtual address space into user > > addresses and kernel addresses? > > We can have 4GB for kernel and 4GB for userspace but this has a overhead > of flushing of tlb for every syscall. > You can also make the split 2/2GB but this has a problem of having less > user address space. > 3/1 is a better choice. Does TLB size change 4, 3, or 2 GB virtual addresses are used? I though it would be same irrespective of whether virtual addresses are 4 or 1 GB. If the TLB size is at all same for any number of virtual addresses then what difference it make while flushing the TLB?
The difference is that the TLB needs not be flushed for the kernel virtual addresses because it remains the same for each processes. The bigger the kernel virtual address space the better it is (but lesser virtual memory for user space). -- To unsubscribe from this list: send an email with "unsubscribe kernelnewbies" to ecartis@xxxxxxxxxxxx Please read the FAQ at http://kernelnewbies.org/FAQ