Translation Lookaside Buffer
Posted: Fri Sep 14, 2012 7:05 am
Hello,
I've got a simple question to you about TLB.
As I know the TLB is part of MMU which contains/stores the most recently used pages.
Something similar like this:
due to Andrews S. Tannenbaum (Modern Operating Systems)
Virtual Page........... some flags............pageframe(physical page)
140.....................................................31
860.....................................................55
....
So, before the MMU begins to translate it throws a look to the TLB if there is an entry for the searched virtual page.
If the virtual page exists it takes the pageframe and use it.
For example for 860 (which could be a stack-page) it takes the page 55.
But what happens if there a two times the own virtual page entry, from two different processes?
For example two same stack-pages, which would be very easy possible?
The MMU could take wrong page instead of the other. and then boooom.
There is no detailed explanation about this topic.
Are there for every process different TLB-Entries, how does it work exactly?
Please help me, I'm learning for the OS-Exam and they ask deep questions.
I'm a little bit confused and want to know the detailed structure about TLB.
Thanks a lot
I've got a simple question to you about TLB.
As I know the TLB is part of MMU which contains/stores the most recently used pages.
Something similar like this:
due to Andrews S. Tannenbaum (Modern Operating Systems)
Virtual Page........... some flags............pageframe(physical page)
140.....................................................31
860.....................................................55
....
So, before the MMU begins to translate it throws a look to the TLB if there is an entry for the searched virtual page.
If the virtual page exists it takes the pageframe and use it.
For example for 860 (which could be a stack-page) it takes the page 55.
But what happens if there a two times the own virtual page entry, from two different processes?
For example two same stack-pages, which would be very easy possible?
The MMU could take wrong page instead of the other. and then boooom.
There is no detailed explanation about this topic.
Are there for every process different TLB-Entries, how does it work exactly?
Please help me, I'm learning for the OS-Exam and they ask deep questions.
I'm a little bit confused and want to know the detailed structure about TLB.
Thanks a lot