Technische Informatik 1 - HS 2017

Ähnliche Dokumente
Lösungsvorschlag zur 6. Übung

Lösungsvorschlag zur 5. Übung

Besprechung des 8. Übungsblattes Einführung in Caches Cache-Organisation Cache-Ersetzungsstrategien Aufgaben (an der Tafel) Testklausur

Grundlagen der Informatik III Wintersemester 2010/2011

Tutorium Rechnerorganisation

Technische Informatik II Wintersemester 2002/03 Sommersemester Heiko Holtkamp

, WS2012 Übungsgruppen: Mo., Do.,

Grundlagen der Rechnerarchitektur

Tutorium Rechnerorganisation

Technische Informatik I. Übung 3 Speicherhierarchie. v t d 0 d 1 d 2 d Technische Informatik I Übung 3. Technische Informatik I Übung 3

Technische Informatik 2 Speichersysteme, Teil 3

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

, SS2012 Übungsgruppen: Do., Mi.,

Enterprise Computing Einführung in das Betriebssystem z/os. Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth WS2012/13

Technische Informatik 2 Speichersysteme, Teil 2

Technische Informatik 1

Cache. Dr.-Ing. Volkmar Sieh. Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2011

Wie groß ist die Page Table?

Einführung in die technische Informatik

Paging. Einfaches Paging. Paging mit virtuellem Speicher

Technische Informatik 1

Vorlesung Rechnerarchitektur. Speicher V 1.2

Vorlesung 14 Speichersysteme (2)

Linux Paging, Caching und Swapping

Virtueller Speicher. SS 2012 Grundlagen der Rechnerarchitektur Speicher 44

CA Übung Christian kann heute nicht kommen => ich bin heute da, Christian das nächste Mal wieder

Memory Management. Peter Puschner Institut für Technische Informatik

8.1. Klassifikation von Speichern

(Prof. Dr. J. Schlichter, WS 2011 / 2012) Übungsleitung: Dr. Wolfgang Wörndl (gbs-ws11@mailschlichter.informatik.tu-muenchen.de)

Informatik I WS 07/08 Tutorium 24

4.3 Hintergrundspeicher

Übung zu Grundlagen der Betriebssysteme. 13. Übung

Grundlagen der Informatik III Wintersemester 2010/2011

Fachbericht Thema: Virtuelle Speicherverwaltung

ggf. page fault virtuelle Adresse physikalische Adresse Hauptspeicher Seitenrahmen Register Seitentabelle logical address page number frame number

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

Besprechung der Probeklausur Übungsscheine, inoffizielle Evaluation Übungsaufgaben Noch Fragen?

Grundlagen der Informatik III

Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung. Maren Bennewitz

Übung zu Einführung in die Informatik # 10

Speicher Typen. TI-Übung 5. Speicher SRAM. Speicher DRAM. SRAM vs. DRAM (EEP)ROM, NV-RAM, Flash,... Speicher, Caches

Digital Design Entwicklung der DRAMs. Richard Roth / FB Informatik und Mathematik Speicher 1

Welche der folgenden Aussagen gelten? a) Im allgemeinen gilt: ein Deadlock tritt auf gdw. der Resource-Allocation Graph einen Zykel

Enterprise Computing Einführung in das Betriebssystem z/os. Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth WS2012/13

(Prüfungs-)Aufgaben zum Thema Speicherverwaltung

Einführung in die Systemprogrammierung

Speicher Virtuelle Speicherverwaltung. Speicherverwaltung

Definitionen zum Verschnitt

Banner T 1 T 2. Bild T 7 T 8. Fließtext T 9

Übung 4 - Betriebssysteme I

Klausur zur Mikroprozessortechnik

Virtueller Speicher und Cache. VL5 GRT, SS 2004, Kneisel

Speicher- Management

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

Echtzeit-Multitasking

Kapitel 9 Hauptspeicherverwaltung

Speicherhierarchie. [Technische Informatik Eine Einführung] Univ.-Prof. Dr. Paul Molitor

Universität Bielefeld Technische Fakultät AG Rechnernetze und verteilte Systeme. Vorlesung 4: Memory. Wintersemester 2001/2002. Peter B.

8. Swapping und Virtueller Speicher

Grundlagen der Rechnerarchitektur. Ein und Ausgabe

Name: Vorname: Matr.-Nr.: 4. a) RISC-Architekturen müssen zur Decodierung von Maschinenbefehlen stets ein mikroprogrammierbares Steuerwerk verwenden.

Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung. Maren Bennewitz

Betriebssysteme 1. Thomas Kolarz. Folie 1

wichtigstes Betriebsmittel - neben dem Prozessor: Speicher

4.2 Verbesserung der Leistungsfähigkeit von Caches

Rechnerarchitektur. Vorlesungsbegleitende Unterlagen. WS 2003/2004 Klaus Waldschmidt

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

1. Speicher. Typische Nutzung eines Adreßraums. Systemsoftware. Textbereich relativ klein. Sehr großer Abstand zwischen Heap und Stack

Digitaltechnik und Rechnerstrukturen. 5. Speicherhierarchie

Moderne Betriebssysteme. Kapitel 8. Kapitel 8. Folie: 1. Multiprozessorsysteme. Autor: Andrew S. Tanenbaum

bereit (oder Zombie genannt). Normales Ende (exit) und synchrone und asynchrone Signal-Ereignisse, z.b.

Nachholklausur Informatik II

Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung

Teil IX. Adressraum und Arbeitsspeicher

5.5.5 Der Speicherverwalter

Die Sicht eines Sysadmins auf DB systeme

Diplom-Ingenieur (BA) für Informationstechnik Ronny Bodach 2011 Eyewitness Forensic Software

Computer-Systeme Teil 15: Virtueller Speicher

Anbindung zum Betriebssystem (BS)

6 Speicherverwaltung

Technische Informatik II

Kapitel 6 Speicherverwaltung Seite 1 zum Teil nach: Silberschatz&Galbin, Operating System Concepts, Addison-Wesley)

9 Speicherorganisation

Betriebssysteme K_Kap11B: Files, Filesysteme Datenstrukturen

One of the few resources increasing faster than the speed of computer hardware is the amount of data to be processed. Bin Hu

Ein- Ausgabeeinheiten

Memory Management Units in High-Performance Processors

G. Caches. G.1.1 Kontext & Orientierung

Name: ES2 Klausur Thema: ARM Name: Punkte: Note:

Physischer Datenbankentwurf: Datenspeicherung

Klausur. Betriebssysteme SS 2007

Betriebssysteme I WS 2013/2014. Betriebssysteme / verteilte Systeme rolanda.dwismuellera@duni-siegena.de Tel.: 0271/ , Büro: H-B 8404

Übungen zu Grundlagen der Rechnerarchitektur und -organisation (ÜGRa)

Übung Datenbanksysteme II Physische Speicherstrukturen. Thorsten Papenbrock

Lösungsskizzen zur Abschlussklausur Betriebssysteme

10.1 Seitentauschverfahren. Kapitel 10 Algorithmen zur Speicherverwaltung. Auswahlstrategie. Modellierung der Seitenzugriffe

OPERATIONEN AUF EINER DATENBANK

Einführung in die Systemprogrammierung 03

Besprechung des 7. Übungsblattes Speicheraufbau Speichertypen DRAM Speicherbelegung

(a) Wie unterscheiden sich synchrone und asynchrone Unterbrechungen? (b) In welchen drei Schritten wird auf Unterbrechungen reagiert?

Transkript:

Institut für Technische Informatik und Kommunikationsnetze Prof. L. Thiele Technische Informatik 1 - HS 2017 Übung 11 Datum: 21. 22. 12. 2017 Virtueller Speicher 1 Performanz Gehen Sie von einem virtuellen Speichersystem mit TLB aber ohne Cache aus. Falls ein Datenzugriff zu einem TLB-Miss führt, wird die entsprechende Instruktion unterbrochen (eine TLB-Miss-Ausnahme wird ausgelöst) und der TLB-Miss behoben. Dann erfolgt eine Wiederholung der Instruktion. Falls eine Instruktion zu einem Seitenfehler führt, wird sie unterbrochen (eine Page-Fault-Ausnahme wird ausgelöst) und die Bearbeitung des Seitenfehlers wird durchgeführt, die auch den entsprechenden Eintrag im TLB anpasst. Anschliessend wird die Instruktion wiederholt. Es sind folgende Variablen und Daten gegeben: Zugriffs- und Suchzeit im TLB: s = 5ns TLB-Missrate: m = 0.02 Mittlere Zugriffszeit zum Hauptspeicher: h = 10ns Mittlere TLB-Miss-Bearbeitungszeit: o = 100ns Seitenfehlerrate: p = 10 6 Mittlere Seitenfehler-Bearbeitungszeit: f = 1ms (a) Bestimmen Sie zunächst allgemein die effektive Speicherzugriffszeit. Setzen Sie dann die gegebenen werte ein. (b) Gehen Sie jetzt davon aus, dass aufeinanderfolgende Zugriffe auf den virtuellen Speicher unabhängig voneinander sind und zufällig auf eine der möglichen Adressen erfolgen. Die Seitengröße ist 2 12 Byte, der physikalische Adressraum beträgt 2 29 Byte und der virtuelle Adressraum beträgt 2 32 Byte. Der TLB enthält 2 12 Seiteneinträge. Bestimmen Sie die TLB-Missrate, die Seitenfehlerrate und die effektive Speicherzugriffszeit in diesem Fall. 1

2 TLB, Seitentabelle und Cache Ein Speichersystem hat die folgenden Eigenschaften: Es existiert nur ein Prozess. Der Speicher ist byteadressiert, jeder Zugriff liefert ein einzelnes Byte. Die virtuelle Adresse hat eine Länge von 32 Bit. Der physikalische Speicher ist 2 26 Byte gross. Eine Seite enthält 2 12 Byte. Der Cache hat 2 10 Zeilen und ist 4-fach assoziativ (4-way set associative) mit einer Block- Datengrösse von 8 Byte. (a) Wie viele Bytes Nutzdaten kann der Cache speichern? (b) Betrachten Sie, wie die CPU die 32 Bit Adressen mit Hilfe von Seitentabelle und Cache verarbeitet. Welche Bits der virtuellen Adresse werden benutzt um die Seitennummer zu bestimmen, welche für den Seitenoffset? Welche Bits der physikalischen Adresse werden benutzt um die Seitennummer zu bestimmen, welche für den Seitenoffset? Wie werden die Bits der physikalischen Adresse für die Cacheadressierung aufgeteilt? (c) Wieviele virtuellen Seiten sind in der Seitentabelle enthalten? Wie viele Bits hat eine Seitentabelle wenn Speicher für alle Zeilen der Seitentabelle allokiert wird? (d) Was ist die grösste Zahl von Tabelleneinträgen, die zu irgendeinem Zeitpunkt ihr Valid-Bit auf 1 gesetzt haben können? (e) Wieviele Blöcke des virtuellen Adressraums konkurrieren um die Blöcke in einer Cache-Zeile? (f) Betrachten Sie die virtuelle Adresse 0x510861. In wie vielen unterschiedlichen Blöcken im Cache könnten die Daten gespeichert sein (geben Sie auch die entsprechende(n) Cachezeile(n) an)? 3 TLB, Seitentabelle und Cache Wir betrachten ein Speichersystem mit einem TLB und einem L1 Datencache: Der Speicher wird byteweise adressiert, jeder Zugriff erfolgt also auf ein einziges Byte. Die virtuelle Adresse umfasst 14 Bit, die physikalische Adresse umfasst 12 Bit. Die Grösse einer Seite beträgt 64 Byte. Der TLB ist 2-fach assoziativ (two-way set associative) mit insgesamt 4 Zeilen. Der L1 Datencache ist direkt abgebildet (direct mapped) mit 16 Zeilen und eine Blockgrösse von 4 Byte. Zu einem bestimmten Zeitpunkt im Ablauf haben die Seitentabelle (nur die ersten 16 Einträge sind gezeigt), der TLB und der Cache die folgenden Inhalte. bedeutet die physikalische Seitennummer (physical page number), bedeutet die virtuelle Seitennummer (virtual page number) und alle Zahlen sind in hexadezimaler Schreibweise angegeben. Leere Einträge bedeuten, dass der Inhalt nicht relevant für die Aufgabenstellung ist. 2

TLB: Index Tag Valid Tag Valid 0 05 0 12 42 1 1 02 20 1 04 32 1 2 01 22 1 07 0 3 01 22 1 02 0 Seitentabelle: Valid 00 01 02 1 02 03 1 03 04 05 06 22 1 07 22 1 Valid 08 09 20 1 0a 0b 0c 0d 04 1 0e 0f Cache: Index Tag Valid Byte[0] Byte[1] Byte[2] Byte[3] 0 00 1 de ad f a ce 1 31 2 24 1 02 13 e1 de 3 22 1 22 23 e2 2e 4 21 5 22 6 18 7 22 1 9a 01 00 de 8 20 9 22 1 83 1a 09 ce a 20 1 0d 1f f 1 d0 b 3a c 3f d 24 1 be f b 57 02 e 23 f 22 1 cf 7a 9b a0 Für jeweils gegebene virtuelle Adressen sollen Sie die folgenden Tabellen ergänzen. Beachten Sie, dass sich nicht alle Einträge mit den vorliegenden Angaben ermitteln lassen. (a) Als Vorbereitung bestimmen Sie zunächst, wie die virtuelle Adresse in die virtuelle Seitennummer und den Seitenoffset aufgeteilt wird. Bestimmen Sie zudem, welche Bits den bilden und welche den. Für die physikalische Adresse bestimmen Sie die Aufteilung in die physikalische Seitennummer und den Seitenoffset. Bestimmen Sie zudem, welche Bits den, den und den bilden. (b) Virtuelle Adresse: 0x0268 Virtuelle Adresse: 13 12 3

(c) Virtuelle Adresse: 0x0197 Virtuelle Adresse: 13 12 (d) Virtuelle Adresse: 0x035e Virtuelle Adresse: 13 12 4

(e) Virtuelle Adresse: 0x021a Virtuelle Adresse: 13 12 5