LINUX.ORG.RU
ФорумTalks

Ламерский вопрос по TLB

 , ,


0

2

Насколько я помню из книжек TLB блоки транслируют только в одну сторону — с виртуального адреса в физический. Хотя пока читал разношерстные статьи про Meltdown и Spectre где-то натыкался, что для определенных архитектур (не буду врать что именно для x86/AMD64) возможно обратное преобразование

[физический адрес —> виртуальный адрес].

У меня вопросы, какой устройство это делает?

И нафига это может понадобиться?

★★★★★

Последнее исправление: Twissel (всего исправлений: 2)

TLB — это всего лишь кэш преобразований.

Обратное преобразование в общем случае невозможно, т. к. результат может быть неоднозначным.

intelfx ★★★★★
()
Ответ на: комментарий от intelfx

Спасибо, я тоже так помню.

Просто за последнюю неделю начитался желтых статеек, где мелькал вопрос из сабжа и подумал, что где-то отстал от жизни.

Хотя логика подсказывала обратное :-)

Twissel ★★★★★
() автор топика

Чтобы транслировать [физический адрес] -> [набор виртуальных адресов] (ага, маппинг может быть не однозначным, или не быть вовсе), достаточно прочитать содержимое всех наборов таблиц страниц. Для каждого набора таблиц страниц (а наборы могут быть per ring, per process, etc.) будет свой маппинг.

AlexAT
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.