Paging: Faster Translations (TLBs)
19
Paging: Faster Translations (TLBs)
Using paging as the core mechanism to support virtual memory can lead
to high performance overheads. By chopping the address space into small,
fixed-sized units (i.e., pages), paging requires a large amount of mapping
information. Because that mapping information is generally stored in
physical memory, paging logically requires an extra memory lookup for
each virtual address generated by the program. Going to memory for
translation information before every instruction fetch or explicit load or
store is prohibitively slow. And thus our problem:
T HE C RUX :
H OW T O S PEED U P A DDRESS T RANSLATION
How can we speed up address translation, and generally avoid the
extra memory reference that paging seems to require? What hardware
support is required? What OS involvement is needed?
When we want to make things fast, the OS usually needs some help.
And help often comes from the OS¡¯s old friend: the hardware. To speed
address translation, we are going to add what is called (for historical reasons [CP78]) a translation-lookaside buffer, or TLB [CG68, C95]. A TLB
is part of the chip¡¯s memory-management unit (MMU), and is simply a
hardware cache of popular virtual-to-physical address translations; thus,
a better name would be an address-translation cache. Upon each virtual
memory reference, the hardware first checks the TLB to see if the desired
translation is held therein; if so, the translation is performed (quickly)
without having to consult the page table (which has all translations). Because of their tremendous performance impact, TLBs in a real sense make
virtual memory possible [C95].
1
2
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
PAGING : FASTER T RANSLATIONS (TLB S )
VPN = (VirtualAddress & VPN_MASK) >> SHIFT
(Success, TlbEntry) = TLB_Lookup(VPN)
if (Success == True)
// TLB Hit
if (CanAccess(TlbEntry.ProtectBits) == True)
Offset
= VirtualAddress & OFFSET_MASK
PhysAddr = (TlbEntry.PFN ................
................
In order to avoid copyright disputes, this page is only a partial summary.
To fulfill the demand for quickly locating and searching documents.
It is intelligent file search solution for home and business.
Related download
- today how do caches work university of washington
- lecture 8 aes the advanced encryption standard lecture
- java basics myusf
- paging faster translations tlbs
- 15 740 18 740 computer architecture lecture 25 main
- java printf method quick reference
- lecture 4 part 2 data transfer instructions
- data list space 1000 reserves a block of 1000 bytes
- bq qr code bar code
- an introduction to numpy and scipy
Related searches
- faster than me or i
- pay off mortgage faster secrets
- pay off mortgage faster calculator
- pay down loan faster calculator
- how to pay off mortgage faster tips
- pay off loan faster calculator
- making stuff faster video
- pay off car faster calculator
- how to get faster at typing
- datatables paging example
- faster synonym
- 5is ram faster than secondary storage