Contents of CR3 register when a kernel thread is executed
mulyadi.santosa at gmail.com
Mon Apr 18 15:36:10 EDT 2011
On 18/04/2011, limp <johnkyr83 at hotmail.com> wrote:
> Hi all,
> I am trying to understand in what extend the PGD (page global directory)
> value stored in the CR3 register indicate the running process/thread by the
> Linux scheduler.
> I know that each process has its own PGD value but what I am confused about
> is the value of CR3 register when kernel threads are scheduled.
kernel thread(s) simply borrow latest scheduled process's PGD ( that
means, the entire address space)....this is done to save unneccessary
TLB flush since kernel thread operates in kernel space and that's the
same to all processes
Freelance Linux trainer and consultant
More information about the Kernelnewbies