[osy] Re: Funkce na fillovani TLB

  • From: Jiri Horky <jiri.horky@xxxxxxxxx>
  • To: osy@xxxxxxxxxxxxx
  • Date: Wed, 19 Nov 2008 16:10:58 +0100



Lukas Jezek wrote:
Rozhodne je nutne umet zneplatnit celou TLB pri prepnuti z 1 procesu
do jineho. (Resp. ty zaznamy, co nemaji global flag)
No to by asi slo, ale opravdu chceme zneplatnovat celou TLB a ne jenom zaznamy tykajici se daneho procesu? Ja bych skoro rekl, ze funkce, co cisti podle ASID by mela stacit....
Jinak jsem spis pro verzi pridavani po 1 zaznamu, chytristiku s
vybiranim bych delal, naimplementujeme nejakou rozumnou strategii pro
vyhozeni nejstarsi stranky, ktera bude vsudepouzitelna (jako ze bychom
to mohli pouzit i u swapovani a tak, ktere se nas netyka).
Ok, udelam funkci, ktere reknes, ktery zaznam (cislo 0-47) chces zapsat (prepsat). Tu chytristiku by si ale dle meho mel resit nekde jinde, nez u funkcni tlb_*(). Imho k ni budes potrebovat dalsi funkce, neco co ti bud eresetovat accessed / dirty flagy....no to se domluvime. Zatim bych to nechal na nahodne.

no jeste se hodi dat tam vic zaznamu, treba pole nebo neco, nebo to
vkladani udelat tak aby kdyz budes chtit vlozit vic zaznamu, tak aby
jsi si nevyhodil ty drive vlozene...
J.

S tim prepsanim je to dobra pripominka, ale to b yse dalo resit prave tim, ze reknes kam je chces napsat. Podle me by tohle zase funkce tlb_*() nemeli resit. A popravde si myslim, ze kdyz tam budes chtit narvat cele pole zaznamu, tak to vyjde nastejno jako kdyz ve for smycce to tam das po jednom (na dany index, aby sis to neprepisoval).

Zdravi
Jirka H.

Other related posts: