diff --git a/ws22.q b/ws22.q index 677999bbd3c57efed7db3474b17f7047696225ef..831540a54a9c9af0f7c85e7d2a41b831b881e9fb 100644 --- a/ws22.q +++ b/ws22.q @@ -199,7 +199,7 @@ 0 Wie wird erkannt, dass eine Seite eines virtuellen Adressraums, auf die ein Maschinenbefehl zugreift, gerade ausgelagert ist? (Februar 2022) + Im Seitendeskriptor wird ein spezielles Bit geführt, das der MMU zeigt, ob eine Seite eingelagert ist oder nicht. Falls die Seite nicht eingelagert ist, löst die MMU einen Trap aus. - Ja, die *page descriptor table* enthält für jede Seite ein *valid*-Bit. Ist dieses nicht gesetzt, so wird ein *Trap* ausgelöst. + Ja, die *page descriptor table* enthält für jeden Seitendeskriptor ein *valid*-Bit. Ist dieses nicht gesetzt, so wird ein *Trap* ausgelöst. - Im Seitendeskriptor steht bei ausgelagerten Seiten eine Adresse des Hintergrundspeichers und der Speichercontroller leitet den Zugriff auf den Hintergrundspeicher um. Nein, die MMU interagiert nicht mit dem Hintergrundspeicher. - Das Betriebssystem erkennt die ungültige Adresse vor Ausführung des Maschinenbefehls und lagert die Seite zuerst ein bevor ein Trap passiert.