OSDev.org

The Place to Start for Operating System Developers
It is currently Thu Mar 28, 2024 12:04 pm

All times are UTC - 6 hours




Post new topic Reply to topic  [ 2 posts ] 
Author Message
 Post subject: The TLB, caches and INVLPG instruction
PostPosted: Mon Oct 09, 2017 7:07 am 
Offline
Member
Member
User avatar

Joined: Sat May 20, 2017 1:25 am
Posts: 51
Location: PCI bus: 3, slot: 9, function: 5
I can understand everything in virtual memory except the TLB and I can't find the purpose of the INVLPG instruction. Can someone explain it to me?
Also what is the caches and the caching?

_________________
How people react when a new update of your OS is coming:
Linux user: Cool, more free stuff!
Mac user: Ooh I have to pay!
Windows user: Ah not again!


Last edited by Coconut9 on Mon Oct 09, 2017 7:13 am, edited 1 time in total.

Top
 Profile  
 
 Post subject: Re: The TLB and INVLPG instruction
PostPosted: Mon Oct 09, 2017 7:13 am 
Offline
Member
Member

Joined: Thu Jul 05, 2007 8:58 am
Posts: 223
In essence, the goal of the TLB is simple: It is very expensive to do a full page adres lookup on every memory access, as that would lead to 3 memory reads for every memory access (assuming 32 bit 4K pagesize paging). The processing required for this would slow the processor down a lot. So instead of doing such a lookup on every memory read, the processor just remembers what previous outcomes were in a cache, the TLB. However, this means that on a memory read, it is no longer checking the actual page tables, so it won't notice if the software has made a change to them. The INVLPG instruction is basically a heads up to the processor, telling it that anything it assumed for the given adres based on past accesses is may have changed, and forcing it to check the page tables next time it needs that particular page.


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 2 posts ] 

All times are UTC - 6 hours


Who is online

Users browsing this forum: No registered users and 22 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group