Second-Level Address Translation
Second-Level Address Translation, SLAT, ist ein allgemeiner Begriff für die hardwaregestützte Übersetzung von physischen Gastadressen in physische Hostadressen. Intel EPT und AMD NPT bieten herstellerspezifische Implementierungen.
Was Sie wissen müssen
Second-Level Address Translation, SLAT, ist ein allgemeiner Begriff für die hardwaregestützte Übersetzung von physischen Gastadressen in physische Hostadressen. Intel EPT und AMD NPT bieten herstellerspezifische Implementierungen.
Wie es funktioniert
Die eigenen Seitentabellen eines Gastes beschreiben dessen virtuellen Speicher. Eine zweite, vom Hypervisor gesteuerte Abbildung ordnet die resultierenden physischen Gastadressen dem Hostspeicher und den Zugriffsberechtigungen zu. Der Prozessor kombiniert die Stufen unter den Übersetzungs- und Caching-Regeln der Architektur.
Wo es nuetzlich ist
Ein Hypervisor kann vermeiden, bestimmte Formen von Shadow-Seitentabellen zu verwalten, und stattdessen die Hardware den mehrstufigen Adressdurchlauf durchführen lassen. Der verbleibende Overhead hängt von der Seitengröße, dem Caching verschachtelter Adressdurchläufe, dem TLB-Verhalten und der Speicherlokalität des Gastes ab.
So pruefen Sie Unterstuetzung und Aktivierung
Identifizieren Sie den Prozessorhersteller und prüfen Sie die entsprechende EPT- oder NPT-Fähigkeit über die unterstützten Diagnosefunktionen des Hypervisors. Prüfen Sie die vollständigen Anforderungen des bereitzustellenden Features, einschließlich Firmware- und Betriebssystemunterstützung.
Ein virtualisiertes Deployment umfasst mehrere Schichten: physische Faehigkeit, Firmware-Freigabe, den aktiven Host-Hypervisor, bereitgestellte Gastfaehigkeiten und die Unterstuetzung durch das Gastbetriebssystem. Pruefen Sie die Schicht, auf der die Operation tatsaechlich laeuft, einschliesslich verschachtelter Virtualisierung, sofern relevant.
Was die Funktion nicht gewaehrleistet
SLAT ist kein separates universelles CPUID-Bit, kein Ersatz für IOMMU und kein Nachweis für die Unterstützung eines bestimmten Betriebssystem-Virtualisierungsprodukts. Ein generisches SLAT-Feld erfordert eine herstellerspezifische Interpretation und begründet nicht jedes erweiterte Übersetzungsfeature.
Kompatibilitaet und Leistung in der Praxis
CPU-Ausfuehrung, Gastspeicher-Translation und Geraete-DMA-Remapping sind separate Funktionen. Schliessen Sie nicht von einem einzelnen Virtualisierungsfeld auf Durchreichung oder Isolation. Nutzen Sie die unterstuetzten Diagnosefunktionen des Hypervisors und die genauen Plattform-/Geraeteanforderungen.
Eine praktische Verifikations-Checkliste
- Erfassen Sie das genaue Prozessor- oder Plattformmodell sowie die beteiligten Versionen von Anwendung, Betriebssystem und Laufzeitumgebung. Behalten Sie den genauen Wortlaut des tatsaechlichen Fehlers oder der Anforderung bei.
- Pruefen Sie die Herstellerreferenz fuer dieses genaue Modell und untersuchen Sie anschliessend die effektive Faehigkeit und den Aktivierungsstatus in der Umgebung, in der das Programm ausgefuehrt wird.
- Gleichen Sie jede Anforderung der ausgewaehlten Binaerdatei oder des Backends ab. Eine aehnlich benannte Funktion, ein Alias oder eine allgemeine Technologiebezeichnung reichen nicht aus.
- Bestaetigen Sie, dass die Anwendung die vorgesehene Implementierung ausgewaehlt hat. Nutzen Sie deren dokumentierte Diagnosefunktionen und einen unterstuetzten Fallback, wenn Anforderungen nicht erfuellt sind.
- Nehmen Sie jeweils nur eine unterstuetzte Aenderung vor und wiederholen Sie denselben Workload. Halten Sie die urspruengliche Konfiguration und einen Wiederherstellungspfad verfuegbar.
Wenn die Funktion aufgefuehrt ist, Software sie jedoch nicht nutzen kann
Beginnen Sie mit der exakten fehlschlagenden Komponente. Eine Hardware-Datenbank beschreibt die erfasste Faehigkeit; das Betriebssystem oder der Hypervisor kann eine abweichende effektive Umgebung bereitstellen. Ein Fehler wegen eines ungueltigen Befehls erfordert zudem die Untersuchung des tatsaechlich fehlerhaften Befehls und des Binaer-Builds, da Beschaedigungen oder ein nicht verwandter, nicht unterstuetzter Befehl aehnliche Symptome hervorrufen koennen.
Installieren Sie die fuer die genaue Plattform unterstuetzte Version von Anwendung, Treiber oder Laufzeitumgebung und nutzen Sie bei Bedarf den dokumentierten Baseline- oder Fallback-Build des Herstellers. Ein Software-Update kann keinen Befehl erzeugen, der dem Prozessor fehlt. Aenderungen an Firmware und Sicherheitsrichtlinien sollten dem Verfahren des Systemherstellers und einem Wiederherstellungsplan folgen statt einer generischen Optimierungsanleitung.
Quellen und Umfang dieser Erklaerung
Intel 64 and IA-32 Architectures Software Developer's Manual · AMD64 Architecture Programmer's Manual, Volume 2: System Programming
Diese Referenzen definieren das Architekturverhalten und die Softwareanforderungen. Sie verifizieren nicht unabhaengig jeden Funktionswert auf einer verknuepften Hardware-Modellseite. Nutzen Sie fuer die Modellunterstuetzung die Herstellernachweise jener Seite und pruefen Sie die effektive Systemkonfiguration. Dieser Artikel liefert keinen Benchmark, keine Zertifizierung und kein unabhaengiges Pruefdatum.
Quellen und Verifizierung
Redaktionelle Verantwortung: Feex. Kein Datum einer unabhängigen Prüfung erfasst. Wie wir recherchieren.
- Intel 64 and IA-32 Architectures Software Developer's Manual - Die Baende 1 und 2 beschreiben die genannten Befehlsfamilien und CPUID; Band 3 beschreibt Status-, Paging-, VMX- und Schutzsteuerungen. Die Architekturdokumentation begruendet keine Unterstuetzung fuer ein bestimmtes Modell.
- AMD64 Architecture Programmer's Manual, Volume 2: System Programming - Systemprogrammierung, SVM und verschachtelte Translation, Revision 3.46. Der aktuelle Dokumentenbetrachter erfordert JavaScript; aeltere Dokument-URLs wurden moeglicherweise zurueckgezogen.
War dieser Artikel nützlich?
Ein Ja oder Nein genügt. Wählen Sie optional einen Grund oder fügen Sie eine kurze Notiz hinzu.
Danke. Das hilft uns, diese Seite zu verbessern.