Рефериран и модифициран бит в TLB и PTE

Може да ги познавате като Accessed и Dirty bits. Сега x86 PTE съдържа тези битове. Да кажем, че TLB също съдържа тези битове. В случай на попадение в TLB, тези битове ще бъдат зададени от хардуера, ако рамката на страницата, към която се отнасят, е достъпна или модифицирана. Въпросът ми е кога тези битове се копират обратно в PTE от хардуера и как точно се постига това (особено в случай на софтуерно управляван TLB)?

PS - Искам да знам това, защото се опитвам да проектирам и тествам алгоритъм за подмяна на страници.


person Bruce    schedule 20.01.2013    source източник


Отговори (1)


x86 процесорите нямат софтуерно управлявани TLB. Ако искате да симулирате такова нещо, трябва да го внедрите върху нормалния TLB, точно както бихте направили картографиране и премахване на картографиране на физически страници във виртуалното адресно пространство: прихващане на достъп до страници в манипулатора на грешки на страницата, модифициране на PDEs/ PTEs, анулирайте записите в TLB, ако е необходимо, и обърнете специално внимание в случай на многопроцесорни системи.

Задаването на достъпните и мръсните битове на 1 от процесора се извършва прозрачно за софтуера, така че след като бъде осъществен достъп до страница, трябва да видите промяната веднага.

Вижте „Ръководство за разработчици на софтуер за архитектури Intel® 64 и IA-32“ за повече подробности. Вземете pdf, който комбинира томове от 1 до 3, така че да имате цялата необходима информация на едно място.

person Alexey Frunze    schedule 20.01.2013