[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Virtual and Linear addresses



On 9/9/06, borasahin@xxxxxxxxxxx <borasahin@xxxxxxxxxxx> wrote:

> i have a small question following the virtual kernel addresses issue - > > where does the kernel page tables stored ? > is there a seperate place ?

swapper_pg_dir. Look at e.g. arch/i386/kernel/head.S...

> or are they part of each process' page tables (and equal in all of them) ?

Yes, that's true...

Just to add a bit more of info (for IA32 specifically). Page Table Entries have flags which indicate type/attributes of entries etc. One such flag is the "Global" flag. If it is set, it means that the entry is shared across processes. So a context switch will not discard those entries from the TLB automatically (Can be flushed manually using the INVPLG instruction though).


-- Bora SAHIN

--
Kernelnewbies: Help each other learn about the Linux kernel.
Archive:       http://mail.nl.linux.org/kernelnewbies/
FAQ:           http://kernelnewbies.org/faq/




--
I look to the future because that's where I'm going to spend the rest
of my life.

--
Kernelnewbies: Help each other learn about the Linux kernel.
Archive:       http://mail.nl.linux.org/kernelnewbies/
FAQ:           http://kernelnewbies.org/faq/