(Prüfungs-)Aufgaben zum Thema Speicherverwaltung

Ähnliche Dokumente
Betriebssysteme BS-S SS Hans-Georg Eßer. Foliensatz S: Speicherverwaltung. Dipl.-Math., Dipl.-Inform. v1.0, 2015/04/14

5. Aufgabenblatt Speicherverwaltung

Linux Paging, Caching und Swapping

Übung Praktische Informatik II

Teil 2: Speicherstrukturen

(Prof. Dr. J. Schlichter, WS 2011 / 2012) Übungsleitung: Dr. Wolfgang Wörndl

Level 2 German, 2015

Zwei Möglichkeiten die TLB zu aktualisieren

Inhaltsübersicht. Speicherverwaltung Teil I. Motivation. Prinzipielle Arten der Speicherverwaltung

(Cache-Schreibstrategien)

Vorlesung: Rechnerstrukturen, Teil 2 (Modul IP7)

Betriebssysteme Sommersemester Betriebssysteme. 5. Kapitel. Adressumsetzung. Dr. Peter Tröger / Prof. M. Werner. Professur Betriebssysteme

Betriebssysteme I WS 2017/18. Prof. Dr. Dirk Müller. 05a 64-/32-Bit-Architekturen

Virtueller Speicher und Memory Management

RO-Tutorien 15 und 16

Speicherverwaltung (Swapping und Paging)

Speicher- und Cacheverwaltung unter Linux. Ralf Petring & Guido Schaumann

Tutorium Rechnerorganisation

Aufgabe 4 : Virtueller Speicher

Level 2 German, 2016

Technische Informatik 1 - HS 2017

Betriebssysteme. Speicherverwaltung - Grundlegende Konzepte. Sommersemester 2014 Prof. Dr. Peter Mandl. Prof. Dr. Peter Mandl Seite 1.

Betriebssysteme Teil 10 B: Fragen rund um Seitenfehler

Level 2 German, 2013

Technische Realisierung (1)

(Prüfungs-)Aufgaben zum Thema Scheduling

Speicherverwaltung und Cache Erläuterungen

Virtueller Speicher WS 2011/2012. M. Esponda-Argüero

Übung zu Grundlagen der Betriebssysteme. 14. Übung

Proseminar Konzepte von Betriebssystem- Komponenten (KVBK) Vortrag zum Thema: Speicheraddressierung, Segmentierung, Paging

Level 1 German, 2014

CPU. Memory. Highest. Fastest. Smallest. Memory. Biggest. Lowest

8. Swapping und Virtueller Speicher

é Er ist software-transparent, d.h. der Benutzer braucht nichts von seiner Existenz zu wissen. Adreßbus Cache- Control Datenbus

Konzepte von Betriebssystemkomponenten Referat am Thema: Adressräume, Page Faults, Demand Paging, Copy on Write Referent: Johannes Werner

Wunschvorstellung der Entwickler vom Speicher

Level 1 German, 2016

Where are we now? The administration building M 3. Voransicht

Lösung von Übungsblatt 2

Rev. Proc Information

, 2014W Übungsgruppen: Mo., Mi.,

Konzepte von Betriebssystem- Komponenten Olessia Usik 20. Juni 2005

5.5 Virtueller Speicher

Technische Informatik 1 - Übung & 22. Dezember Philipp Miedl

Wie groß ist die Page Table?

Betriebssystemtechnik

Klausur Betriebssysteme I

Besprechung des 9. Übungsblattes Virtuelle Speicherverwaltung Aufgaben

Main Memory. Hauptspeicher. Memories. Speichermodule. SIMM: single inline memory module 72 Pins. DIMM: dual inline memory module 168 Pins

Hans-Georg Eßer, Hochschule München, Betriebssysteme I, SS Speicherverwaltung 1

Klausur Betriebssysteme I

3 Schnittstelle zum Betriebssystem 3.1 Einleitung

Order Ansicht Inhalt

Betriebssysteme Kap J, Teil C: Paging, Pagereplacement

6. Juni VO Prüfung Betriebssysteme. Ges.)(100) 1.)(35) 2.)(20) 3.)(45) Bitte verwenden Sie nur dokumentenechtes Schreibmaterial!

Leichtgewichtsprozesse

Leichtgewichtsprozesse

Paging. Einfaches Paging. Paging mit virtuellem Speicher

1. Von-Neumann-Architektur (7/66 Punkte)

Memory Management. Peter Puschner Institut für Technische Informatik

Betriebssysteme I WS 2016/2017. Betriebssysteme / verteilte Systeme Tel.: 0271/ , Büro: H-B 8404

Finite Difference Method (FDM)

Magic Figures. We note that in the example magic square the numbers 1 9 are used. All three rows (columns) have equal sum, called the magic number.

Lösung von Übungsblatt 2

DIBELS TM. German Translations of Administration Directions

Speicherverwaltung. Design Digitaler Systeme. Prof. Dr.-Ing. Rainer Bermbach

Number of Maximal Partial Clones

Level 1 German, 2012

Offenes Lernen 1: Pflichtaufgaben

2.3 Prozessverwaltung

7. Speicherverwaltung

Technische Informatik II (TI II) (9) Speicherverwaltung II. Sebastian Zug Arbeitsgruppe: Embedded Smart Systems

Quiz. Gegeben sei ein 16KB Cache mit 32 Byte Blockgröße. Wie verteilen sich die Bits einer 32 Bit Adresse auf: Tag Index Byte Offset.

Proseminar Konzepte von Betriebssystem-Komponenten (KVBK) Vortrag zum Thema: Speicheraddressierung, Segmentierung, Paging Von Christian Hubert

Naiver Ansatz. Blöcke und Seiten. Betriebssysteme I Sommersemester 2009 Kapitel 6: Speicherverwaltung und Dateisysteme

ReadMe zur Installation der BRICKware for Windows, Version ReadMe on Installing BRICKware for Windows, Version 6.1.2

Klausur. Betriebssysteme SS

RO-Tutorien 15 und 16

Grundlagen der Informatik III Wintersemester 2010/2011

WAS IST DER KOMPARATIV: = The comparative

Klausur Betriebssysteme

Fachbericht Thema: Virtuelle Speicherverwaltung

iid software tools QuickStartGuide iid USB base driver installation

Klausur "World Trade" February 2013

Betriebssysteme SS Hans-Georg Eßer Dipl.-Math., Dipl.-Inform. SB 3 ( , v2) Speicherverwaltung Ein-/Ausgabegeräte und Schnittstellen

(Prof. Dr. J. Schlichter, WS 2011 / 2012) Übungsleitung: Dr. Wolfgang Wörndl

Betriebssysteme 1. Thomas Kolarz. Folie 1

Hauptspeicherverwaltung - Memory Management

Technische Informatik 2 Speichersysteme, Teil 3

RO-Tutorien 17 und 18

Aufgabe 1 Sicherheit. Klausur Betriebssysteme und Sicherheit, Name: Matrikel-Nr.: Studiengang: 7 Punkte

, 2015W Übungsgruppen: Mo., Mi.,

Schachaufgabe 17: Pa-Übung. Chess Problem 17: Stalemate training. Stufe / Level: 2

Schreiben von Pages. Schreiben einer Page in den Swap Space ist sehr teuer (kostet millionen von CPU Zyklen).

Transkript:

(Prüfungs-)Aufgaben zum Thema Speicherverwaltung 1) Ein Betriebssystem mit virtueller Speicherverwaltung arbeite mit 32 Bit langen virtuellen Adressen einer Seitengröße von 4KB zweistufigem Paging, wobei die äußere und die inneren Seitentabellen gleich groß sind Wie sieht das Format einer virtuellen Adresse aus, dh welche der 32 Bits der Adresse Beschreiben Sie den Ablauf einer Adreßübersetzung an diesem System 4) a) Beschreiben Sie die Seitenersetzung nach dem LRU-Verfahren ( least recently used ) b) Warum ist die Seitenersetzung nach LRU besser als nach FIFO? c) Warum wird eine Seitenersetzung nach LRU in der Praxis nicht implementiert? 5) Ein Betriebssystem mit virtueller Speicherverwaltung arbeite mit 32 Bit langen virtuellen Adressen, einer Seitengröße von 1KB, 2-stufigem Paging, wobei die äußere und die inneren Seitentabellen gleich groß sind, Seitentabelleneinträgen der Länge 4 Byte a) Wie sieht das Format einer virtuellen Adresse aus, dh welche der 32 Bits der Adresse b) Wieviele innere Seitentabellen gibt es? Wie groß sind die äußere bzw die inneren Seitentabellen? 7) a) Erläutern Sie das Prinzip der Seitenersetzungsstrategie Least Recently Used (LRU) b) Erklären Sie, warum LRU (in seiner reinen Form) zu aufwendig zu implementieren ist 8) Erläutern Sie die Verwendung des Copy-on-Write-Mechanismus in einem UNIX-System mit Demand Paging 9) Das Betriebssystem VMS auf dem Alpha-Prozessor arbeitet mit 43 Bit langen virtuellen Adressen, einer Seitengröße von 8 KB, 3-stufigem Paging, wobei alle Seitentabellen gleich groß sind, Seitentabelleneinträgen der Länge 8 Byte a) Wie sieht das Format einer virtuellen Adresse aus, dh welche der 43 Bits der Adresse b) Wieviele Seitentabellen der verschiedenen Ebenen gibt es? Wie groß sind diese Seitentabellen?

10) Ein System mit einstufigem Paging verwende 32 Bit breite virtuelle Adressen Die Seitengröße sei 1 KB (1) Geben Sie das entsprechende Adreßformat an: 31 0 (2) Wieviele Einträge kann die Seitentabelle maximal haben? (3) Beschreiben Sie den Ablauf der Adreßübersetzung Beschreiben Sie Funktion und Bedeutung eines TLB (Translation Lookaside Buffer) Welche Einträge enthält er bei einstufigem Paging? 11) Beschreiben Sie entweder für Unix oder für Windows NT, wofür und wie ein Copy-on- Write-Bit im Seitentabelleneintrag verwendet wird 12) Was versteht man unter Page Buffering in einem Demand-Paging-System? (Erläutern Sie die prinzipielle Funktion und die Vorteile) 13) a) Erläutern Sie Vor- und Nachteile der Seitenersetzung nach dem FIFO-Verfahren b) Durch welche zusätzliche(n) Methode(n) der Speicherverwaltung können die Nachteile soweit ausgeglichen werden, daß die Seitenersetzung nach FIFO in der Praxis gut funktioniert (denken Sie zb an VMS)? 14) a) Erläutern Sie die optimale Seitenersetzungsstrategie Warum ist diese nicht implementierbar? b) Erklären Sie, warum die Seitenersetzungsstrategie LRU (least recently used) im allgemeinen zu weniger Page Faults führt als FIFO (first in first out) 15) Beschreiben Sie entweder für Unix oder für Windows NT, wofür und wie ein Copy-on- Write-Bit im Seitentabelleneintrag verwendet wird Es folgt die Beschreibung für das Betriebssystem : 16) Zukünftige Alpha-Prozessoren werden mit folgenden Werten arbeiten: einer Seitengröße von 16 KB, 47 Bit langen virtuellen Adressen, 3-stufigem Paging, wobei alle Seitentabellen gleich groß sind,

Seitentabelleneinträgen der Länge 8 Byte a) Wie sieht das Format einer virtuellen Adresse aus, dh welche der 47 Bits der Adresse 46 0 b) Wieviele Seitentabellen der verschiedenen Ebenen gibt es? Wie groß sind diese Seitentabellen? 17) a) Wann wird von einem Prozessor, der virtuelle Speicherverwaltung unterstützt, normalerweise (Spezialfall: siehe Teil c der Aufgabe) eine Page Fault Exception ausgelöst? b) Was versteht man unter einem "soft page fault"? Wie kann es zu einem soft page fault kommen? (Gehen Sie davon aus, dass die Speicherverwaltung so arbeitet wie zb die von Unix und Windows Es gibt dann mindestens drei Möglichkeiten) c) Wann wird außerdem eine Page Fault Exception ausgelöst, wenn der Prozessor ein Copy-on-Write-Bit unterstützt? d) Beschreiben Sie entweder für Unix oder für Windows NT, wofür und wie ein Copy-on- Write-Bit im Seitentabelleneintrag verwendet wird Es folgt die Beschreibung für das Betriebssystem : 18) Intel Pentium-Pro-Prozessoren kennen den PAE- (Physical Address Extension) Modus, in dem ein dreistufiges Paging durchgeführt wird Das Format einer virtuellen Adresse sieht dann wie folgt aus: 31 30 29 21 20 12 11 0 directory page offset Die obersten beiden Bits enthalten den sog "Page Directory Pointer Index", der eines der Page Directories auswählt a) Wieviele Page Directories und wieviele (innere) Page Tables gibt es? b) Beschreiben Sie (zb anhand einer Skizze) den Ablauf einer Adreßübersetzung c) Die Einträge in den (inneren) Page Tables enthalten 24 bit breite Nummern der Seitenrahmen Wieviele physikalische Adressen können somit im PAE-Modus adressiert werden? 19) Was versteht man unter "Paging", was unter "Swapping"? (Keine Details!)

21) Im sog PSE36-Modus arbeiten Intel Pentium-Pro-Prozessoren mit einer einstufigen Adreßübersetzung Das Format einer virtuellen Adresse sieht dann wie folgt aus: 31 22 21 0 directory Byte offset a) Mit welcher Seitengröße wird in diesem Modus gearbeitet (Angabe in KB, MB, GB)? b) Ein "page directory entry" enthält eine 14 Bit breite Adresse für die physikalische Seite Wie groß ist demnach der gesamte adressierbare physikalische Speicher (Angabe in KB, MB, GB, TB)? Wieso kann es sinnvoll sein, an einem Intel-System, das mit 32 Bit breiten virtuellen Adressen arbeitet, einen physikalischen Hauptspeicher mit mehr als 4 GB einzusetzen? (Eine der beiden möglichen Antworten genügt) 23) Was versteht man unter "Thrashing"? 24) An einem typischen System, das mit demand paging arbeitet (Unix, Windows und viele andere) habe die Hardware einen page fault ausgelöst Beschreiben Sie, was der page fault handler zu tun hat Hinweis: Sie dürfen davon ausgehen, daß der page fault ausgelöst wurde, weil die gerade zugegriffene Seite im Seitentabelleneintrag als ungültig gekennzeichnet war (es ist also keine Behandlung des COW-Bit-Falles nötig) Denken Sie jedoch daran, daß es auch dann noch (mindestens) zwei Fälle gibt, die erkannt und unterschiedlich behandelt werden müssen 25) Ein System arbeite mit 20 Bit breiten virtuellen Adressen, einer Seitengröße von 4 KB und einstufigem Paging Ein Ausschnitt aus der Seitentabelle sehe wie folgt aus: Eintrags-Nr V M COW PFN 0 1 0 0 %X 123 1 1 1 0 %X F24 2 0 0 1 on disk 3 1 1 1 %X 2A5 9 1 0 1 %X 41C A 0 1 1 %X 8D4 B 1 0 0 %X E4C 19 0 0 0 on disk 1A 1 1 0 %X 2B3 1B 0 1 1 %X 56C

V = valid bit, M = modify bit, COW = copy-on-write bit, PFN = page frame number Alle Zahlen in hexadezimaler Schreibweise Geben Sie bei allen Fragen nicht nur die Antwort, sondern auch eine kurze Begründung a) Wie groß ist der virtuelle Adreßraum (Angabe in KB, MB, GB)? b) Wie groß ist der adressierbare physikalische Speicher (Angabe in KB, MB, GB)? c) Wie groß ist die Seitentabelle, wenn jeder Eintrag 4 Byte groß ist? Auf welche physikalische Adresse wird bei einem Zugriff auf die virtuelle Adresse %X1AFFE zugegriffen? 26) Was versteht man unter lokaler und globaler Seitenersetzung? Beschreiben Sie jeweils auch kurz die Vor- und Nachteile 27) Erläutern Sie den "second chance Algorithmus" für die Seitenersetzung 28) a) Warum verwenden die meisten Prozessoren bei der Übersetzung virtueller Adressen ein mehrstufiges Paging-Verfahren? b) Was sind die Nachteile von mehrstufigem Paging? c) Durch welche zusätzliche Einrichtung im Prozessor (die allerdings auch schon bei einstufigem Paging eingesetzt wird) werden die Nachteile des mehrstufigen Paging weitgehend ausgeglichen? Geben Sie nicht nur den Namen dieser Einrichtung, sondern auch kurz deren Funktionalität an (keine Details) 29) 32-bit-Intel-Prozessoren verwenden (normalerweise) ein zweistufiges Paging-Verfahren gemäß dem folgenden Aufbau einer virtuellen Adresse: Geben Sie bei allen Aufgaben auch eine Begründung für Ihre Antwort a) Wie groß ist eine Seite? 31 22 21 12 11 0 p p offset b) Wieviele äußere Seitentabellen (Intel-Terminologie: Page Directories) gibt es und wie groß sind diese? c) Wieviele innere Seitentabellen (Intel-Terminologie: Page Tables) gibt es und wie groß sind diese? d) Warum wurden wohl die Parameter des Paging (Seitengröße, Anzahl und Einteilung der Stufen) von Intel so gewählt?

30) Die Alpha-Architektur sieht vor, daß zukünftige Prozessoren mit folgenden Werten arbeiten: einer Seitengröße von 32 KB, 51 Bit langen virtuellen Adressen, 3-stufigem Paging, wobei alle Seitentabellen gleich groß sind, Seitentabelleneinträgen der Länge 8 Byte a) Wie groß ist der virtuelle Adreßraum (Angabe in MB oder GB oder TB oder PB)? b) Wie sieht das Format einer virtuellen Adresse aus, dh welche der 51 Bits der Adresse 50 0 c) Beschreiben Sie (zb anhand einer Skizze) den Ablauf einer Adreßübersetzung d) Wieviele Seitentabellen der verschiedenen Ebenen gibt es? Wie groß sind diese Seitentabellen? 31) a) Erläutern Sie kurz (mit Angabe einiger Zahlen), warum der Hauptspeicher für die heutigen Prozessoren um Größenordnungen (wieviele?) zu langsam ist b) Wie ändert sich die Zugriffszeit auf den Hauptspeicher bei virtueller Speicherverwaltung (ein- bzw mehrstufiges Paging)? c) Durch welchen Mechanismus wird diese Verschlechterung der Zugriffszeiten auf den Hauptspeicher bei virtueller Speicherverwaltung weitgehend kompensiert? (Geben Sie die prinzipielle Funktionsweise, aber keine Details der Implementierung an) 33) Ein System arbeitet mit einer Seitengröße von 4 KB und jeweils 32 Bit breiten virtuellen und physikalischen Adressen a) Unter Beibehaltung der Seitengröße und der Breite der virtuellen Adressen soll ein physikalischer Hauptspeicher von mehr als 4 GB ermöglicht (also die physikalischen Adressen verbreitert) werden Beschreiben Sie eine Möglichkeit, dies zu erreichen Was ist der limitierende Faktor für die Breite der physikalischen Adresse bei Ihrer Lösung? (Hinweis: Die Art, wie Intel-Prozessoren dies tun, ist natürlich eine Möglichkeit, aber nicht die einfachste) b) Wieso kann die in a) beschriebene Änderung sinnvoll sein? (Eine der beiden möglichen Antworten genügt) 34) Die Alpha-Architektur sieht vor, daß zukünftige Prozessoren mit folgenden Werten arbeiten: einer Seitengröße von 16 KB, 47 Bit breiten virtuellen Adressen, 3-stufigem Paging, wobei alle Seitentabellen gleich groß sind, Seitentabelleneinträgen der Länge 8 Byte

a) Wie groß ist der virtuelle Adreßraum (Angabe in MB oder GB oder TB oder PB)? b) Wie sieht das Format einer virtuellen Adresse aus, dh welche der 47 Bits der Adresse 46 0 c) Beschreiben Sie (zb anhand einer Skizze) den Ablauf einer Adreßübersetzung d) Wieviele Seitentabellen der verschiedenen Ebenen gibt es und wie groß sind diese Seitentabellen? 35) Beschreiben Sie den Weg einer Seite von die Seite ist in der ausführbaren Datei, aber noch nicht im Speicher bis die Seite ist im Pagefile, aber nicht mehr im Speicher an einem Unix- oder Windows-System 36) Ein System arbeite mit 24 Bit breiten virtuellen Adressen, einer Seitengröße von 4 KB und einstufigem Paging Ein Ausschnitt aus der Seitentabelle sehe wie folgt aus: Eintrags-Nr V M COW PFN 0 1 0 0 %X 123 1 1 1 0 %X F24 2 0 0 1 on disk Legende: 3 1 1 1 %X 2A5 V = valid bit, M = modify bit, COW = copy-on-write bit, PFN = page frame number 9 1 0 1 %X 41C A 0 0 0 on disk Alle Zahlen in hexadezimaler B 1 0 0 %X E4C Schreibweise (wie durch %X 19 0 0 0 on disk 1A 0 1 1 %X 2B3 1B 1 1 0 %X 56C angezeigt) Geben Sie bei allen Fragen nicht nur die Antwort, sondern auch eine kurze Begründung a) Wie groß ist der virtuelle Adreßraum (Angabe in KB, MB, GB)? b) Wie groß ist der adressierbare physikalische Speicher (Angabe in KB, MB, GB)? c) Wie groß ist die Seitentabelle, wenn jeder Eintrag 4 Byte lang ist (Angabe in KB, MB, GB)? d) Was geschieht bei einem Schreibzugriff auf die virtuelle Adresse %X 00ABBA?

e) Was geschieht bei einem Schreibzugriff auf die virtuelle Adresse %X 009123? f) Was geschieht bei einem Schreibzugriff auf die virtuelle Adresse %X 01BAFF? 37) Beschreiben Sie die Bedeutung der folgenden Bits in einem Seitentabelleneintrag Geben Sie außerdem jeweils an, von wem (Hardware, Betriebssystemkomponente, Anwendung) das Bit gesetzt, gelöscht und gelesen (ausgewertet) wird a) Valid Bit b) Modify Bit c) Reference Bit (keine Details über die Verwendung!) d) Copy-on-write Bit (keine Details über die Verwendung!) 38) Beschreiben Sie (zb anhand einer Skizze) das Format einer virtuellen Adresse und den Ablauf einer Adressübersetzung an einem System, das mit 2-stufigem Paging arbeitet a) Wodurch sind die Größe des virtuellen und des physikalischen Adressraums festgelegt? b) Wieso kann es sinnvoll sein, einen physikalischen Adressraum zur Verfügung zu stellen, der größer ist als der virtuelle Adressraum? (Eine der beiden möglichen Antworten genügt Zusatzpunkte für 2 richtige Antworten) 39) Beschreiben Sie die Seitenersetzung nach dem Two-Handed-Clock-Algorithmus (Falls Sie diese Aufgabe nicht lösen können, können Sie auch den Second-Chance- Algorithmus beschreiben Dafür gibt es allerdings weniger Punkte) 40) Prozessoren, die virtuelle Speicherverwaltung anbieten, haben alle ein sog Modify Bit (manchmal auch Dirty Bit genannt) a) Ist das Modify Bit zwingend notwendig, oder könnte man auch darauf verzichten? Begründen Sie Ihre Antwort b) Beschreiben Sie möglichst detailliert, wie das Modify Bit (zb in Unix und Windows) benutzt wird 41) Beschreiben Sie Funktion und Verwendung eines Reference Bits im Seitentabelleneintrag Geben Sie dabei auch ein konkretes Beispiel für den Einsatz des Reference Bits an 42) Was versteht man unter Page Buffering an einem Demand Paging System? Beschreiben Sie insbesondere auch, was bei einer Seitenersetzung und bei einem soft page fault geschieht 43) Der Intel Itanium-Prozessor verwendet maximal 51 Bit lange virtuelle Adressen und die Seitengröße kann eingestellt werden Die Implementierung eines Betriebssystems auf dem Itanium verwende eine Seitengröße von 32 KB, 51 Bit lange virtuelle Adressen,

3-stufiges Paging, wobei alle Seitentabellen gleich groß sind, Seitentabelleneinträge der Länge 8 Byte a) Wie sieht das Format einer virtuellen Adresse aus, dh welche der 51 Bits der Adresse 50 0 b) Beschreiben Sie (zb anhand einer Skizze) den Ablauf einer Adreßübersetzung c) Wie groß ist jede einzelne Seitentabelle (Angabe in KB, MB, GB)? 44) Jedes Betriebssystem verwendet Teile des Hauptspeichers für den Paged Pool und für den Non-Paged Pool a) Wofür werden diese Pools verwendet? b) Welche Art der Speicherverwaltung wird innerhalb der Pools gemacht (keine Details)? c) Was versteht man in diesem Zusammenhang unter lookaside lists? Was haben diese für Vor- und Nachteile? d) Zusatzaufgabe (4 Zusatzpunkte) Welchen Vorteil hat es, wenn ein Betriebssystem mehr als einen Pool derselben Art verwendet (wie es zb Windows tut)? 45) Ein System arbeite mit 16 Bit breiten virtuellen Adressen, einer Seitengröße von 4 KB und einstufigem Paging Ein Ausschnitt aus der Seitentabelle sehe wie folgt aus: Eintrags-Nr V M COW PFN 0 1 0 0 %X 23 1 1 0 0 %X F4 2 0 0 0 on disk Legende: 3 0 1 0 on disk V = valid bit, M = modify bit, COW = copy-on-write bit, PFN = page frame number 9 1 0 1 %X 4C A 1 0 1 %X A5 Alle Zahlen in hexadezimaler B 1 0 1 %X EC Schreibweise (wie durch %X angezeigt) Die Page Frame Database für die in diesem Ausschnitt vorkommenden physikalischen Seiten sehe wie folgt aus:

PFN Reference Count %X 23 1 %X 4C 1 %X A5 2 %X EC 1 %X F4 3 Geben Sie bei allen Fragen nicht nur die Antwort, sondern auch eine kurze Begründung a) Wie groß ist der virtuelle Adreßraum (Angabe in Byte, KB, MB)? b) Wie groß ist der adressierbare physikalische Speicher (Angabe in Byte, KB, MB)? c) Wie groß ist die Seitentabelle, wenn jeder Eintrag 4 Byte lang ist (Angabe in Byte, KB, MB)? d) Was geschieht bei einem Schreibzugriff auf die virtuelle Adresse %X 2345? e) Was geschieht bei einem Schreibzugriff auf die virtuelle Adresse %X AFFE? f) Was geschieht bei einem Schreibzugriff auf die virtuelle Adresse %X 1234? g) Was geschieht bei einem Schreibzugriff auf die virtuelle Adresse %X BAFF? 46) Ein System arbeite mit mehrstufigem Paging, und zwar so, wie dies auch Unix und Windows-Systeme tun (die Unterschiede zwischen Unix und Windows spielen für diese Aufgabe keine Rolle) a) Wie findet das System die äußerste Seitentabelle? b) Welche Information(en) sind in einem Seitentabelleneintrag der äußeren und mittleren Seitentabellen enthalten? c) Welche Information(en) sind in einem Seitentabelleneintrag der innersten Seitentabellen enthalten? (Ohne Berücksichtigung von Spezialfällen wie der Verwendung von Bits für andere Zwecke als üblich) 47) Ein Betriebssystem arbeite für die Adressräume der Prozesse mit virtueller Speicherverwaltung Geben Sie drei (Teil-)Bereiche der Speicherverwaltung an, in denen dennoch zusammenhängende Speicherverwaltung gemacht wird (Stichworte genügen Der Bereich, den es in zwei Ausprägungen gibt, zählt nur als eine Antwort) 48) Was versteht man unter einer demand-zero page? Geben Sie auch an, wer festlegt, ob eine Seite eine demand-zero page ist und wie ein page fault für so eine Seite abläuft 49) Beschreiben Sie den Mechanismus des Page Buffering incl der Abläufe, wenn eine Seite in den Buffer kommt bzw aus dem Buffer entnommen wird (absichtlich vage formuliert) [Es gibt Zusatzpunkte für Details unter Unix (Unterschiede bei modifizierten / nicht modifizierten Seiten) XOR unter Windows (diverse Listen für das Page Buffering)]

50) Beschreiben Sie Funktion und Bedeutung eines TLB (Translation Lookaside Buffer) Beantworten Sie dabei auch folgende Fragen: - Welche Informationen sind im TLB enthalten? - Wie, wann und von wem werden sie zugegriffen? - Wie groß ist ein typischer TLB? 51) Die Informationen des TLB sind (natürlich) auch von der Software auslesbar Dies kann benutzt werden, um eine andere Art von Second Chance Algorithmus für die Seitenersetzung zu implementieren, bei der das Reference Bit nicht benötigt wird: eine Seite wird von der Ersetzung ausgenommen, wenn der Seitentabelleneintrag sich im TLB befindet a) Ist dieser Algorithmus für lokale oder globale Seitenersetzung geeignet, oder für beide? b) Bewerten Sie diesen Algorithmus im Vergleich mit FIFO und mit dem normalen Second Chance-Algorithmus (bzw dem Two-Handed-Clock Algorithmus) 52) a) In welchen zwei Fällen wird von einem Prozessor ein Page Fault ausgelöst? b) Welche fünf Fälle muss der Page Fault Handler unterscheiden, da diese vom Prinzip her unterschiedlich behandelt werden müssen? Sie brauchen nicht erklären, wie diese Fälle vom Page Fault Handler erkannt werden Geben Sie aber ganz grob an, wie die Behandlung erfolgt, so dass man sieht, dass diese in den fünf Fällen prinzipiell unterschiedlich ist 53) a) Aus welchen zwei Gründen ist einstufiges Paging schon bei 32-Bit-Prozessoren (und erst recht bei 64-Bit-Prozessoren) ia ungeeignet? b) Was ist der Nachteil von mehrstufigem Paging? c) Durch welche zusätzliche Einrichtung im Prozessor (die auch schon bei einstufigem Paging eingesetzt wird) werden die Nachteile des mehrstufigen Paging weitgehend ausgeglichen? Geben Sie nicht nur den Namen dieser Einrichtung, sondern auch kurz deren Funktionalität an (keine Details) d) (Zusatzaufgabe mit Zusatzpunkten, bitte Rückseite verwenden) Auf welche, ia eher unpraktikable Art, könnte dennoch einstufiges Paging implementiert werden? (Hinweis: Denken Sie zb an eine der alternativen Adressierungsarten der x86- Prozessoren) 54) Nach einem Page Fault hat der Page Fault Handler erkannt, dass dieser wegen eines Schreibzugriffes bei gesetztem Copy-on-Write-Bit ausgelöst wurde Beschreiben Sie die Behandlung dieses Page Faults (Achtung: es müssen zwei Fälle unterschieden werden) 55) a) Was versteht man unter einem "soft page fault"? Wie kann es zu einem soft page fault kommen? (Gehen Sie davon aus, dass die Speicherverwaltung so arbeitet wie zb die von Unix und Windows Es gibt dann mindestens drei Möglichkeiten) b) Beschreiben Sie für einen der Fälle eines soft page faults, wie dieser vom Page Fault Handler behandelt werden muss (Am besten suchen Sie sich den einfachsten Fall aus)

56) Beschreiben Sie die übliche Art der virtuellen Adressierung, die von einem 32-bit x86- Prozessor verwendet wird Geben Sie dabei insbesondere Folgendes an: - die Seitengröße - die Anzahl der Paging-Stufen - die Bedeutung der einzelnen Bits einer virtuellen Adresse - den Ablauf einer Adressübersetzung (zb durch eine kommentierte Skizze) 57) Ein System verwendet das folgende Format für eine virtuelle Adresse: a) Was ist die Seitengröße an diesem System? b) Wieviele Paging-Stufen verwendet dieses System? c) Beschreiben Sie den prinzipiellen Ablauf der Übersetzung einer virtuellen Adresse, zb durch eine (kommentierte!) Skizze d) Wieviele Seitentabellen der verschiedenen Stufen gibt es, und wieviele Einträge haben diese? e) Worauf muss bei der Festlegung der Breite für die Werte p 1, p 2 und d im Hinblick auf die Größe der Seitentabellen geachtet werden? Wer (dh welche Komponente des Systems) legt diese Werte fest? 58) What is contained in the page table entry of an inner-most page table? Just name the elements without explaining them 59) a) What are the two reasons for a processor to raise a page fault exception? (No details) b) What is meant by a demand-zero page? How is a page fault requesting a demandzero page handled? c) What is the definition of a soft page fault? Give at least two examples of how a soft page fault can occur 60) Describe the meaning and the use of the modify bit in a page table entry When and by whom (eg processor, which operating system component or routine, application program) is the modify bit set, cleared, and read (evaluated)? 61) Some valid page of a process has been selected for being replaced Describe the actions that are performed during the page replacement (on just about all systems, including Windows, and Unix) (1 extra point for using the correct terminology on a Windows system)

62) a) Name all the different pieces of information that are contained in a page table entry (resp in the case of multi-level paging: in an entry of an innermost page table) b) Explain the purpose and use of one of the pieces of information, including in which situations and by whom (eg processor, which operating system component or routine, application program) this piece of information is written resp read (evaluated) 63) The page fault handler finds out that it was called because the program requested a demand zero page How does it fulfill this request? (Name all necessary actions) 64) You can choose to answer either part a) or part b) If you decide to answer the other part as well, you can gain up to n extra points a) Describe the Page Buffering mechanism, including the actions taken when a page is put into the buffer resp is removed from the buffer (phrased vaguely on purpose), as well as the purpose/advantage of this mechanism b) Describe the Copy-onWrite mechanism, including a description of the two cases of how to handle a specific situation occurring when using it (phrased vaguely on purpose) Also, give one example of where this mechanism is used