[OSy] TLB Invalid exception pri pristupe na zasobnik

Tomas Mikula tomas.mikula at gmail.com
Sat Jan 19 01:50:47 CET 2008


Ahoj,

chcem sa spytat, ako osetrujete / predchadzate vynimke TLB Invalid pri
pristupe na zasobnik.

Nie ze by som mal problem, ktory neviem vyriesit vobec, ale mozno sa
ukaze, ze mi nieco dolezite unika. Budem vdacny za vase postrehy.

Polozku TLB pre stranku p oznacim ako neplatnu, ked v tlb potrebujem
mapovanie pre jej parovu stranku (p xor 1), ale mapovanie pre stranku
p este v strankovacich tabulkach neexistuje.
Neskor na stranku p naalokujem zasobnik, na ktory ked potom pristupim,
vyvola TLB Invalid. Osetrenie TLB Invalid potrebuje zasobnik a tak sa
to zacykli.

Myslim, ze to nejde rozumne osetrit, ze sa tomu musi predchadzat.

Doteraz sme tomu "predchadzali" tak, ze pri context switchi sa TLB
premazalo, takze nastavala rovno TLB Refill.

Moznosti, ktore mi napadaju:
 - pri alokacii zasobniku skontrolovat, ci jeho prva alebo posledna stranka
    nemaju v TLB neplatny zaznam a ked tak ho updatovat;
 - mat kazdy zasobnik o velkosti nasobku 2 dvoch stranok
    so zaciatkom na parnej stranke.

Uvitam, ak mate niekto elegantnejsie riesenie.

Tomas




More information about the NSWI004 mailing list