Synchronisieren eines Translation-Lookaside-Pufferspeichers mit einer erweiterten Paging-Tabelle
Prozessor (318) eines auf Virtualisierung basierenden Systems (300), der umfasst:einen Translation-Lookaside-Puffer, TLB, (323) um ein Mapping von einer physikalischen Gastadresse (412, 432, 452) zu einer physikalischen Host-Adresse (404, 414, 424) zu speichern; undeine Logikschaltung (322, 332, 334...
Gespeichert in:
Hauptverfasser: | , , , , , , , |
---|---|
Format: | Patent |
Sprache: | ger |
Schlagworte: | |
Online-Zugang: | Volltext bestellen |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
Zusammenfassung: | Prozessor (318) eines auf Virtualisierung basierenden Systems (300), der umfasst:einen Translation-Lookaside-Puffer, TLB, (323) um ein Mapping von einer physikalischen Gastadresse (412, 432, 452) zu einer physikalischen Host-Adresse (404, 414, 424) zu speichern; undeine Logikschaltung (322, 332, 334), um eine Synchronisierung des Mappings von der physikalischen Gastadresse (412, 432, 452) zur physikalischen Host-Adresse (404, 414, 424), die im Translation-Lookaside-Puffer (323) gespeichert ist, mit einem entsprechenden Mapping, das in einer erweiterten Paging-Tabelle, EPT, (328; 455, 465, 475) gespeichert ist, durchzuführen,wobei das entsprechende Mapping ein in der EPT (328; 455, 465, 475) gespeichertes Mapping mit derselben physikalischen Gastadresse (412, 432, 452) wie das im TLB (323) gespeicherte Mapping aufweist,wobei die Synchronisierung auf dem Operanden eines Befehls basiert,wobei der Operand einen EPT-Zeiger umfasst, undwobei eine Abruflogik (330) ferner einen ersten Operanden des Befehls, einen zweiten Operanden des Befehls und einen dritten Operanden des Befehls empfängt;die Logikschaltung (322, 332, 334) fernerdas Mapping auswählt, das zumindest teilweise in der EPT (328; 455, 465, 475) gespeichert ist, basierend auf einer Kontextbezeichnung, die aus dem ersten Operanden des Befehls erhalten wird;die Gastadresse (412, 432,452) auswählt, zumindest teilweise basierend auf dem zweiten Operanden des Befehls; undeinen Ausführungsmodus des Befehls auswählt, basierend auf dem dritten Operanden des Befehls;und wobei es sich bei dem Ausführungsmodus des Befehls um einen der folgenden handelt;ein erster Modus, in welchem nur ein einziges in dem TLB (323) gespeichertes und zu der physikalischen Gastadresse (412, 432,452) gehörendes Mapping mit der entsprechenden Umsetzung in der EPT (328; 455, 465, 475) synchronisiert wird;ein zweiter Modus, in welchem alle Mappings, die in dem TLB (323) gespeichert sind und zu einem EPT-Kontext gehören, der aus der Kontextbezeichnung erhalten wird, mit den entsprechenden Mappings in der EPT (328; 455, 465, 475) synchronisiert werden, wobei die Synchronisation des Mappings ein Synchronisieren jener Einträge im TLB (323) in dem EPT-Kontext, der in dem EPT-Zeiger spezifiziert ist, mit der erweiterten Paging-Tabelle,EPT, (328; 455, 465, 475) umfasst; undein dritter Modus, in welchem alle Mappings, die in dem TLB (323) gespeichert sind und zu irgendeinem EPT-Kontext gehören, der aus der Kontextbezeichnung erhalten wird, mit |
---|