Translation Lookaside Buffer (Memory Management)
A small set of things to know about the TLB as part of the memory management.
6 flashcards · Computer Science · by initBasti
What happens when a Page table changes?
The TLB has to be flushed, but depending on the size that has to be changed the Kernel either flushes the whole user address space ( on a fork or a exec ), a specific range or a PAGE_SIZE sized part ( during page fault processing )
What is a physical Cache?
A small memory behind the TLB, that saves the most recently used physical pages. If the TLB searches for that physical page again, it can take it from the cache directly.
What is a virtual cache?
A memory before the TLB, that saves recent virtual pages. It's a lot faster than a physical cache, because no translations are needed, if the cpu wants the physical page for a virtual page that is in this cache.
Which problem goes with a virtual cache?
The memory in this cache has no protection, so processes can not share the memory in this cache, there is no collision protection.
What is a VIPT cache?
Virtually Indexed Physically Tagged Cache, used in most modern systems, a combination of a physical and a virtual cache. Takes the page offset from the virtual memory address as index into the Virtual Cache and compares the physical tag for each index in the cache with the physical address from the TLB to check if it is a cache hit or cache miss.
What is the TLB?
The Translation Lookaside Buffer, is a small associative memory that is used to cache recently used virtual to physical page mappings. This makes memory a lot more efficient.