Я читаю о EPT от Intel для поддержки виртуализации. Я читал о вложенной таблице страниц. Мой вопрос заключается в том, кэширует ли TLB гостевой VA гостевой PA, а также гостевой PA на адрес хост-машины? или это просто виртуальный адрес для машинного адреса?В таблице расширенных страниц Intels (EPT), виртуальный адрес гостевого виртуального адреса TLB для гостевого физического адреса?
ответ
Если есть только «обычный» TLB, то он хранит HVA на HPA (машинное дополнение), но теперь некоторые процессоры доступны с другими TLB, специфичными для виртуализации, которые хранят посреднический перевод.
Нет. Я не думаю, что это полезно для TLB для сохранения сопоставлений с гостевого линейного адреса на гостевой физический адрес. Я понимаю, что запись TLB должна содержать только сопоставления, которые могут быть использованы для создания реального физического адреса. По словам Intel SDM, может быть три различным отображения типа в буферах TLB:
- линейна физическое отображение
- гость физического провести физическое картографирование
- в сочетании выполните картирование
Всего эти три отображения GENERATE номера страниц страницы хоста, а не гостевые.
Примечание: Я использовал термин «линейный адрес» вместо «виртуального адреса», потому что это более точный термин для использования, если мы рассмотрим процесс сегментации.