<< Chapter < Page Chapter >> Page >
  • One possibility: search whole table from start on every reference.
  • A better possibility: restrict the info for any given virtual page to fall in exactly one location in the memory. Then only need to check thatone location. E.g. use the low-order bits of the virtual page number as the index into the memory. This is the way real TLB's work.

Disadvantage of TLB scheme: if two pages use the same entry of the memory, only one of them can be remembered at once. If processis referencing both pages at same time, TLB does not work very well.

Example: TLB with 64 (100 octal) slots. Suppose the following virtual pages are referenced (octal): 621, 2145, 621, 2145, ... 321,2145, 321, 621.

TLBs are a lot like hash tables except simpler (must be to be implemented in hardware). Some hash functions are better thanothers.

  • Is it better to use low page number bits than high ones?
  • Is there any way to improve on the TLB hashing function?

Another approach: let any given virtual page useeither of two slots in the TLB. Make memory wider, use two comparators to check both slots at once.

  • This is as fast as the simple scheme, but a bit more expensive (two comparators instead of one, also have to decide which old entry to replacewhen bringing in a new entry).
  • Advantage: less likely that there will be conflicts that degrade performance (takes three pages falling in the same place, instead of two).
  • Explain names:
    • Direct mapped.
    • Set associative.
    • Fully associative.

Must be careful to flush TLB during each context swap. Why?

In practice, TLB's have been extremely successful with 95% or great hit rates for relatively small sizes.

Inverted page tables

As address spaces have grown to 64 bits, the side of traditional page tables becomes a problem. Even with two-level (or even three orfour!) page tables, the tables themselves can become too large.

A solution (used on the IBM Power4 and others) to this problem has two parts:

  • A physical page table instead of a logical one. The physical page table is often called an inverted page table. This table contains one entry perpage frame. An inverted page table is very good at mapping from physical page to logical page number (as is done by the operating system during a page fault),but not very good at mapping from virtual page number to physical page number (as is done on every memory reference by the processor).
  • A TLB fixes the above problem. Since there is no other hardware or registers dedicated to memory mapping, the TLB can be quite a bit larger so thatmissing-entry faults are rare.

With an inverted page table, most address translations are handled by the TLB. When there is a miss in the TLB, theoperating is notified (via an interrupt) and TLB miss-handler is invoked.

Shadow tables

The operating system can sometimes be thought of as an extension of the abstractions provided by the hardware. However, when thetable format is defined by the hardware (such as for a page table entry), you cannot change that format. So, what do you do if you wanted to store additionalinformation, such as last reference time or sharing pointer, in each entry?

Questions & Answers

what is mutation
Janga Reply
what is a cell
Sifune Reply
how is urine form
Sifune
what is antagonism?
mahase Reply
classification of plants, gymnosperm features.
Linsy Reply
what is the features of gymnosperm
Linsy
how many types of solid did we have
Samuel Reply
what is an ionic bond
Samuel
What is Atoms
Daprince Reply
what is fallopian tube
Merolyn
what is bladder
Merolyn
what's bulbourethral gland
Eduek Reply
urine is formed in the nephron of the renal medulla in the kidney. It starts from filtration, then selective reabsorption and finally secretion
onuoha Reply
State the evolution relation and relevance between endoplasmic reticulum and cytoskeleton as it relates to cell.
Jeremiah
what is heart
Konadu Reply
how is urine formed in human
Konadu
how is urine formed in human
Rahma
what is the diference between a cavity and a canal
Pelagie Reply
what is the causative agent of malaria
Diamond
malaria is caused by an insect called mosquito.
Naomi
Malaria is cause by female anopheles mosquito
Isaac
Malaria is caused by plasmodium Female anopheles mosquitoe is d carrier
Olalekan
a canal is more needed in a root but a cavity is a bad effect
Commander
what are pathogens
Don Reply
In biology, a pathogen (Greek: πάθος pathos "suffering", "passion" and -γενής -genēs "producer of") in the oldest and broadest sense, is anything that can produce disease. A pathogen may also be referred to as an infectious agent, or simply a germ. The term pathogen came into use in the 1880s.[1][2
Zainab
A virus
Commander
Definition of respiration
Muhsin Reply
respiration is the process in which we breath in oxygen and breath out carbon dioxide
Achor
how are lungs work
Commander
where does digestion begins
Achiri Reply
in the mouth
EZEKIEL
what are the functions of follicle stimulating harmones?
Rashima Reply
stimulates the follicle to release the mature ovum into the oviduct
Davonte
what are the functions of Endocrine and pituitary gland
Chinaza
endocrine secrete hormone and regulate body process
Achor
while pituitary gland is an example of endocrine system and it's found in the Brain
Achor
what's biology?
Egbodo Reply
Biology is the study of living organisms, divided into many specialized field that cover their morphology, physiology,anatomy, behaviour,origin and distribution.
Lisah
biology is the study of life.
Alfreda
Biology is the study of how living organisms live and survive in a specific environment
Sifune
Got questions? Join the online conversation and get instant answers!
Jobilize.com Reply

Get Jobilize Job Search Mobile App in your pocket Now!

Get it on Google Play Download on the App Store Now




Source:  OpenStax, Operating systems. OpenStax CNX. Aug 13, 2009 Download for free at http://cnx.org/content/col10785/1.2
Google Play and the Google Play logo are trademarks of Google Inc.

Notification Switch

Would you like to follow the 'Operating systems' conversation and receive update notifications?

Ask