Second-Level Address Translation
Second-Level Address Translation, SLAT, er en generell betegnelse for maskinvareassistert oversettelse fra gjestefysiske til vertsfysiske adresser. Intel EPT og AMD NPT gir leverandørspesifikke implementeringer.
Dette må du vite
Second-Level Address Translation, SLAT, er en generell betegnelse for maskinvareassistert oversettelse fra gjestefysiske til vertsfysiske adresser. Intel EPT og AMD NPT gir leverandørspesifikke implementeringer.
Slik fungerer det
En gjests egne sidetabeller beskriver det virtuelle minnet dens. En sekundær tilordning kontrollert av hypervisoren knytter de resulterende gjestefysiske adressene til vertsminne og tilgangstillatelser. Prosessoren kombinerer trinnene under arkitekturens regler for oversettelse og hurtigbufring.
Hvor det er nyttig
En hypervisor kan unngå å vedlikeholde enkelte former for skyggesidetabeller og i stedet la maskinvaren utføre den trinnvise traverseringen. Den gjenværende overheaden avhenger av sidestørrelse, hurtigbufring av nøstede traverseringer, TLB-oppførsel og lokalisering av gjesteminne.
Slik kontrolleres støtte og aktivering
Identifiser prosessorleverandøren og kontroller den tilsvarende EPT- eller NPT-kapasiteten gjennom hypervisorens støttede diagnostikk. Kontroller de fullstendige kravene til funksjonen som rulles ut, inkludert støtte for fastvare og OS.
En virtualisert distribusjon har flere lag: fysisk kapasitet, fastvaretillatelse, den aktive vertshypervisoren, eksponerte gjestefunksjoner og støtte i gjeste-OS. Kontroller laget der operasjonen faktisk kjører, inkludert nøstet virtualisering når det er relevant.
Hva funksjonen ikke etablerer
SLAT er ikke en separat universell CPUID-bit, en erstatning for IOMMU eller et bevis på støtte for et bestemt OS-virtualiseringsprodukt. Et generisk SLAT-felt trenger en leverandørspesifikk tolkning og etablerer ikke enhver avansert oversettelsesfunksjon.
Kompatibilitet og ytelse i praksis
CPU-kjøring, gjesteminneoversettelse og enhets-DMA-omadressering er separate fasiliteter. Ikke utled gjennomføring eller isolasjon fra ett virtualiseringsfelt. Bruk hypervisorens støttede diagnostikk og nøyaktige plattform-/enhetskrav.
En praktisk sjekkliste for verifisering
- Registrer den nøyaktige prosessor- eller plattformmodellen og de involverte applikasjons-, OS- og kjøretidsversjonene. Bevar ordlyden i den faktiske feilen eller kravet.
- Sjekk produsentreferansen for akkurat den modellen, og undersøk deretter den faktiske kapasiteten og aktiverte tilstanden i miljøet der programmet kjører.
- Sammenlign ethvert krav til den valgte binærfilen eller baksiden. En lignende navngitt funksjon, et alias eller en bred teknologietikett er ikke tilstrekkelig.
- Bekreft at applikasjonen valgte den tiltenkte implementeringen. Bruk dens dokumenterte diagnostikk og en støttet reservemetode når kravene ikke er oppfylt.
- Gjør én støttet endring om gangen og gjenta den samme arbeidsbelastningen. Hold den opprinnelige konfigurasjonen og gjenopprettingsstien tilgjengelig.
Hvis funksjonen er oppført, men programvare ikke kan bruke den
Start med den nøyaktige komponenten som feiler. En maskinwaredatabase beskriver registrert kapasitet; operativsystemet eller hypervisoren kan eksponere et annet reelt miljø. En feil om ulovlig instruksjon krever også undersøkelse av den faktiske feilende instruksjonen og binærbyggingen, fordi korrupsjon eller en urelatert, ustøttet instruksjon kan gi et lignende symptom.
Installer applikasjonen, driveren eller kjøretidsversjonen som støttes for den nøyaktige plattformen, og bruk om nødvendig leverandørens dokumenterte grunnlinje- eller reservebygg. En programvareoppdatering kan ikke opprette en instruksjon som prosessoren mangler fastvare. Endringer i fastvare og sikkerhetspolicy bør følge systemprodusentens prosedyre og en gjenopprettingsplan i stedet for en generisk optimaliseringsoppskrift.
Kilder og omfang for denne forklaringen
Intel 64 and IA-32 Architectures Software Developer's Manual · AMD64 Architecture Programmer's Manual, Volume 2: System Programming
Disse referansene etablerer arkitektonisk oppførsel og programvarekrav. De verifiserer ikke uavhengig hver funksjonsverdi på en koblet maskinvaremodells side. For modellstøtte, bruk den sidens produsentdokumentasjon og kontroller den reelle systemkonfigurasjonen. Denne artikkelen oppgir ikke en referansemåling, sertifisering eller dato for uavhengig gjennomgang.
Kilder og verifisering
Redaksjonelt eierskap: Feex. Ingen uavhengig vurderingsdato er registrert. Hvordan vi gjør undersøkelser.
- Intel 64 and IA-32 Architectures Software Developer's Manual · Bind 1 og 2 beskriver de navngitte instruksjonsfamiliene og CPUID; bind 3 beskriver tilstands-, sidevekslings-, VMX- og beskyttelseskontroller. Arkitekturdokumentasjon etablerer ikke støtte for en bestemt modell.
- AMD64 Architecture Programmer's Manual, Volume 2: System Programming · Systemprogrammering, SVM og nøstet oversettelse, revisjon 3.46. Den gjeldende dokumentasjonsvisningen krever JavaScript; eldre dokument-URL-er kan være faset ut.
Var denne artikkelen nyttig?
Et ja eller nei holder. Velg en grunn hvis du vil, eller legg til en kort kommentar.
Takk. Det hjelper oss med å forbedre denne siden.