Second-Level Address Translation
Second-Level Address Translation, SLAT, on yleistermi laitteistoavusteiselle osoitteenmuunnokselle vieraan fyysisistä osoitteista isännän fyysisiin osoitteisiin. Intel EPT ja AMD NPT tarjoavat toimittajakohtaiset toteutukset.
Mitä sinun tulee tietää
Second-Level Address Translation, SLAT, on yleistermi laitteistoavusteiselle osoitteenmuunnokselle vieraan fyysisistä osoitteista isännän fyysisiin osoitteisiin. Intel EPT ja AMD NPT tarjoavat toimittajakohtaiset toteutukset.
Miten se toimii
Vieraskäyttöjärjestelmän omat sivutaulut kuvaavat sen virtuaalimuistia. Toinen, hypervisorin hallitsema kuvaus yhdistää tuloksena olevat vieraan fyysiset osoitteet isännän muistiin ja käyttöoikeuksiin. Suoritin yhdistää vaiheet arkkitehtuurin osoitteenmuunnos- ja välimuistisääntöjen mukaisesti.
Missä siitä on hyötyä
Hypervisori voi välttää joidenkin varjosivutaulujen muotojen ylläpidon ja antaa sen sijaan laitteiston suorittaa vaiheistetun läpikäynnin (walk). Jäljelle jäävä lisärasite riippuu sivukoosta, sisäkkäisen haun välimuistiin tallentamisesta, TLB-toiminnasta ja vierasmuistin paikallisuudesta.
Tuen ja käyttöönoton tarkistaminen
Tunnista suorittimen valmistaja ja tarkista vastaava EPT- tai NPT-kyky hypervisorin tukemien diagnostiikkatyökalujen kautta. Tarkista käyttöönotettavan ominaisuuden täydelliset vaatimukset, mukaan lukien laiteohjelmisto- ja käyttöjärjestelmätuki.
Virtualisoidussa käyttöönotossa on useita tasoja: fyysinen suorituskyky, laiteohjelmiston lupa, aktiivinen isäntähypervisori, näkyvät vierasominaisuudet ja vieraskäyttöjärjestelmän tuki. Tarkista taso, jolla toiminto todellisuudessa suoritetaan, mukaan lukien sisäkkäinen virtualisointi tarvittaessa.
Mitä ominaisuus ei takaa
SLAT ei ole erillinen yleinen CPUID-bitti, IOMMU:n korvike tai todiste tietyn käyttöjärjestelmän virtualisointituotteen tuesta. Yleinen SLAT-kenttä vaatii toimittajakohtaisen tulkinnan eikä se vahvista jokaista edistynyttä osoitteenmuunnosominaisuutta.
Yhteensopivuus ja suorituskyky käytännössä
Suorittimen suoritus, vierasmuistin kääntäminen ja laitteen DMA-uudelleenkartoitus ovat erillisiä toimintoja. Älä päättele läpivientiä tai eristystä yhdestä virtualisointikentästä. Käytä hypervisorin tuettua diagnostiikkaa ja tarkkoja alusta-/laitevaatimuksia.
Käytännön tarkistuslista todentamiseen
- Kirjaa tarkka suoritin- tai alustamalli sekä kyseessä olevat sovellus-, käyttöjärjestelmä- ja ajonaikaiset versiot. Säilytä todellisen virheen tai vaatimuksen sanamuoto.
- Tarkista kyseisen tarkan mallin valmistajaviite ja tutki sitten todellinen suorituskyky ja käyttöönottotila ympäristössä, jossa ohjelma suoritetaan.
- Vertaa valitun binaarin tai taustajärjestelmän jokaista vaatimusta. Samankaltaisesti nimetty ominaisuus, alias tai laaja teknologiamerkintä ei riitä.
- Varmista, että sovellus valitsi aiotun toteutuksen. Käytä sen dokumentoitua diagnostiikkaa ja tuettua vararatkaisua, kun vaatimukset eivät täyty.
- Tee yksi tuettu muutos kerrallaan ja toista sama työkuorma. Pidä alkuperäinen kokoonpano ja palautuspolku saatavilla.
Jos ominaisuus on luettelossa, mutta ohjelmisto ei voi käyttää sitä
Aloita tarkasta vikaantuvasta komponentista. Laitteistotietokanta kuvaa tallennettua kykyä; käyttöjärjestelmä tai hypervisori voi tuoda esiin erilaisen todellisen ympäristön. Virheellisen käskyn virhe vaatii myös todellisen virheellisen käskyn ja binaarikäännöksen tutkimista, koska korruptio tai liittymätön tukematon käsky voi aiheuttaa samanlaisen oireen.
Asenna kyseiselle alustalle tuettu sovellus-, ajuri- tai ajoympäristöversio ja käytä tarvittaessa toimittajan dokumentoitua perus- tai varakäännöstä. Ohjelmistopäivitys ei voi luoda käskyä, joka suorittimelta puuttuu. Laiteohjelmisto- ja tietoturvakäytäntömuutosten tulee noudattaa järjestelmävalmistajan menettelyä ja palautussuunnitelmaa yleisen optimointiohjeen sijaan.
Tämän selityksen lähteet ja laajuus
Intel 64 and IA-32 Architectures Software Developer's Manual · AMD64 Architecture Programmer's Manual, Osa 2: Järjestelmäohjelmointi
Nämä viitteet määrittävät arkkitehtuurisen käyttäytymisen ja ohjelmistovaatimukset. Ne eivät itsenäisesti vahvista kaikkia ominaisuusarvoja linkitetyllä laitteistomallisivulla. Mallikohtaista tukea varten käytä kyseisen sivun valmistajan todisteita ja tarkista todellinen järjestelmäkokoonpano. Tämä artikkeli ei tarjoa suorituskykytestiä, sertifiointia tai riippumatonta arviointipäivämäärää.
Lähteet ja vahvistus
Toimituksellinen omistajuus: Feex. Riippumatonta tarkistuspäivämäärää ei ole kirjattu. Miten tutkimme.
- Intel 64 and IA-32 Architectures Software Developer's Manual · Osat 1 ja 2 kuvaavat nimetyt käskyperheet ja CPUID:n; Osa 3 kuvaa tila-, sivutus-, VMX- ja suojausohjaukset. Arkkitehtuuridokumentaatio ei vahvista tukea tietylle mallille.
- AMD64 Architecture Programmer's Manual, Osa 2: Järjestelmäohjelmointi · Järjestelmäohjelmointi, SVM ja sisäkkäinen kääntäminen, versio 3.46. Nykyinen dokumentaatiokatselin vaatii JavaScriptin; vanhemmat dokumenttien URL-osoitteet on saatettu poistaa käytöstä.
Oliko tämä artikkeli hyödyllinen?
Kyllä tai ei riittää. Valitse halutessasi syy tai lisää lyhyt viesti.
Kiitos. Se auttaa meitä parantamaan tätä sivua.