Прескачане към съдържанието

Extended Page Tables (EPT)

Архитектурна справкаFeex

Нарича се също VT-x с EPT

EPT, Extended Page Tables, осигурява втори етап на транслация на паметта за виртуални машини на Intel. Обозначението VT-x с EPT описва както виртуализацията, така и това допълнително средство за транслация.

Какво трябва да знаете

EPT, Extended Page Tables, осигурява втори етап на транслация на паметта за виртуални машини на Intel. Обозначението VT-x с EPT описва както виртуализацията, така и това допълнително средство за транслация.

Как работи

Таблиците със страници на госта транслират виртуалните адреси на госта във физически адреси на госта; EPT транслира физическите адреси на госта във физически адреси на хоста под контрола на хипервайзора. EPT записите имат свои собствени права и могат да генерират EPT нарушения, когато дадено съпоставяне или достъп не са разрешени. Кешовете за транслация и правилата за инвалидиране остават съществена част от коректната работа.

Къде е полезно

Хипервайзорът може да съпостави физическата памет на госта за всяка VM с нейните заделени хост страници, като същевременно позволи на госта да управлява своето собствено виртуално адресно пространство. Това може да намали зависимостта от по-старите техники със сенчести таблици със страници (shadow page tables), но действителната цена за натоварването все пак зависи от кеширането на транслацията и шаблоните на достъп.

Как се проверява поддръжката и активирането

Проверете VMX контролите и информацията за възможностите на EPT чрез хипервайзора или привилегировани инструменти на платформата. Само битът на CPUID за VT-x не е достатъчен. Проверете точните контроли и размери на страниците, изисквани от внедряването, вместо да третирате EPT като един-единствен универсален режим.

Внедряването с виртуализация включва няколко слоя: физическа възможност, разрешение от фърмуера, активен хипервайзор на хоста, експонирани възможности за госта и поддръжка от операционната система на госта. Проверявайте слоя, в който действително се изпълнява операцията, включително при вложена виртуализация, когато е приложимо.

Какво не гарантира тази функция

EPT не е VT-d: транслацията на паметта на госта, инициирана от CPU, и DMA ремапирането на устройства са различни пътища. Поддръжката на EPT не предполага всеки размер на EPT страница, разширение за контрол на изпълнението или конфигурация за вложена виртуализация.

Съвместимост и производителност на практика

Изпълнението на инструкции от процесора, транслирането на паметта на госта и пренасочването на DMA на устройствата са отделни механизми. Не правете изводи за директно пренасочване (passthrough) или изолация само от едно поле за виртуализация. Използвайте поддържаната диагностика на хипервайзора и точните изисквания на платформата/устройството.

Практически контролен списък за проверка

  1. Запишете точния модел на процесора или платформата, както и използваните версии на приложението, операционната система и средата за изпълнение. Запазете точния текст на действителната грешка или изискване.
  2. Проверете документацията от производителя за този точен модел, след което инспектирайте действителните възможности и активираното състояние в средата, където работи програмата.
  3. Сравнете всяко изискване на избрания двоичен файл или бекенд. Подобно наименувана функция, псевдоним или общ технологичен етикет не са достатъчни.
  4. Потвърдете, че приложението е избрало планираната реализация. Използвайте неговата документирана диагностика и поддържан резервен вариант, когато изискванията не са изпълнени.
  5. Правете по една поддържана промяна наведнъж и повтаряйте същото работно натоварване. Запазете достъпни оригиналната конфигурация и плана за възстановяване.

Ако функцията е посочена, но софтуерът не може да я използва

Започнете с точния компонент, който дава грешка. Хардуерната база данни описва записаните възможности; операционната система или хипервайзорът могат да предоставят различна ефективна среда. Грешка за невалидна инструкция (illegal-instruction) също изисква разследване на действителната сриваща се инструкция и компилацията на двоичния файл, тъй като повреда или несвързана неподдържана инструкция може да предизвика подобен симптом.

Инсталирайте версията на приложението, драйвера или средата за изпълнение, която се поддържа за точната платформа, и използвайте документираната от производителя базова или резервна компилация, ако е необходимо. Софтуерна актуализация не може да създаде инструкция, която липсва в процесора. Промените във фърмуера и политиките за сигурност трябва да следват процедурата на производителя на системата и план за възстановяване, а не общи съвети за оптимизация.

Източници и обхват на това обяснение

Intel 64 and IA-32 Architectures Software Developer's Manual

Тези източници установяват архитектурното поведение и софтуерните изисквания. Те не проверяват независимо всяка стойност на параметър на свързана страница за хардуерен модел. За поддръжка на даден модел използвайте данните от производителя на съответната страница и проверете ефективната системна конфигурация. Тази статия не предоставя бенчмарк, сертификация или дата на независим преглед.

Източници и проверка

Редакционна собственост: Feex. Не е записана дата на независим преглед. Как проучваме.

  • Intel 64 and IA-32 Architectures Software Developer's Manual · Томове 1 и 2 описват посочените семейства инструкции и CPUID; Том 3 описва състоянието, страницирането, VMX и контролите за защита. Документацията за архитектурата не гарантира поддръжка за конкретен модел.

Беше ли полезна тази статия?

Достатъчно е "да" или "не". Изберете причина, ако желаете, или добавете кратка бележка.

Беше ли полезна тази статия?