Vorlesung Rechnerarchitektur. Speicher V 1.2

Größe: px
Ab Seite anzeigen:

Download "Vorlesung Rechnerarchitektur. Speicher V 1.2"

Transkript

1 Speicher V 1.2

2 Speicheranbindung früher und heute Bei der MU0 wurde der Speicher in einem Taktzyklus gelesen und geschrieben Dieses Verhalten war für ältere Rechner charakteristisch und stimmt auch noch heute für zahlreiche (kleine) Mikrocontroller Aus der Vorlesung TGI wissen wir: Es gibt SRAM (speichert mit FFs) und DRAM (speichert mit Kapazität), DRAM wird z.b. mit einem Speichertakt von 133 MHz ausgelesen (bei DDR wie er für PCs üblich ist) Aktuelle Prozessoren arbeiten aber z.b. mit einer Taktrate von 3 GHz, selbst Prozessoren in Mobiltelefonen erreichen heutzutage mehr als 1 GHz Wie passt das zusammen? SRAM ist zwar schneller als DRAM, aber eben auch sehr viel teurer mehrere Gbyte mit SRAM zu realisieren wäre unerschwinglich 2

3 Prinzip der Lokalität Programme greifen auf einen kleinen Adressbereich zu Temporäre Lokalität (temporal locality) Tendenz zur Wiederverwendung zuvor bereits genutzter Datenelemente (DE) z.b. Instruktionen in einer Schleife, Schleifenvariablen Räumliche Lokalität (spatial locality) Tendenz auf DE's zuzugreifen, die in der ähe von bereits zugegriffenen DE liegen. z.b. sequenzielle Instruktionen, Felder Es wäre vorteilhaft, wenn wir die Lokalität ausnutzen könnten, um schneller auf den Speicher zuzugreifen / Daten verarbeiten zu können 3

4 Der Cache Cache-Speicher sind Pufferspeicher, die diese Lokalität ausnutzen Zeitlich / räumlich lokale Daten werden bei Caches im schnellen SRAM vorgehalten, damit die CPU schnell zugreifen kann, der Cache ist jedoch sehr viel kleiner als der gesamte Speicher, der weiterhin aus DRAM besteht Insgesamt ergibt sich (je nach Anwendung) eine deutlich höhere Leistung bei nur geringfügig höheren Kosten Caches bilden nach den Registern die nächste Stufe der Speicherhierarchie Wir schauen uns zunächst die Speicherhierarchie genauer an, dann betrachten wir genauer, wie Caches funktionieren und was es für Arten von Caches gibt 4

5 Speicherhierarchie In Rechnern werden sehr unterschiedliche Arten von Speichern eingesetzt, die sich stark in Preis und Leistung unterscheiden. Speicherhierarchie teuer schnell billig langsam groß klein 5

6 Speicherhierarchie Register Register Register Register Byte Byte << 1ns 1ns Level Level 11 Cache Cache KByte KByte wenige wenige ns ns Level Level 22 Cache Cache einige einige KByte KByte einige einige ns ns Hauptspeicher Hauptspeicher MByte MByte bis bis GByte GByte ns ns Flash Flash Speicher Speicher (z.b. (z.b. USB USB Sticks) Sticks) einige einige GByte GByte µs µs Festplatte Festplatte einige einige GByte GByte ms ms Static RAM (SRAM) 0.5ns 2.5ns $2000 $5000 per GB Dynamic RAM (DRAM) 50ns 70ns $20 $75 per GB Festplatte 5ms 20ms $0.20 $2 per GB 6

7 Speicherhierarchie und das Ausnutzen der Lokalität Alles wird auf der Festplatte / FlashRAM gespeichert Kopiere (zugegriffenen) Speicher und benachbarte Elemente von der Festplatte zu (kleinerem) Dynamic RAM (DRAM) Speicher Benötigt periodisches Auffrischen (Millisekunden) aufgrund von Leckströmen (kl. Energiebedarf auch bei Ruhestrom) sehr hohe Datendichte auf einer kleinen Chipfläche Vergleichsweise billig Hauptspeicher Kopiere (gerade zugegriffenen) Speicher und benachbarte Elemente von DRAM zu (noch kleinerem) Static RAM Speicher (SRAM) Kein Auffrischen notwendig Cache Speicher angeschlossen an die CPU 7

8 Agenda Cache-Speicher, Grundprinzipien Cache-Organisation Kenngrößen von Caches Schreiben von Daten Lesen von Daten 8

9 Cache-Speicher, Grundprinzipien 1. Zugriff auf Cache deutlich schneller als auf Hauptspeicher 2. CPU kann auf Daten im Cache sehr schnell zugreifen 3. Cache viel kleiner als Hauptspeicher Cacheblock (Cachezeile, cache line): Einheit für Kopie Umfasst i.d.r. mehrere Worte Woher ist bekannt, ob ein Datum im Cache liegt? Wo wird nachgeschaut? 9

10 Cache-Speicher, Grundprinzipien Anzahl Zeilen eine Potenz von 2 Untere Adressbits als Speicherort Speicherort wird durch Adresse bestimmt Direkte Adressierung: nur eine Wahl (Speicheraddresse) modulo (#Zeilen im Cache) 10

11 Cache-Speicher, Grundprinzipien Woher ist bekannt, welcher Block im Cachespeicher abgelegt ist? Speichern der Blockadresse und der Daten ur die oberen Adressbits werden für Blockadresse benötigt Wird als TAG bezeichnet Was ist, wenn am Speicherort keine Daten sind? Valid bit: 1 = vorhanden, 0 = nicht vorhanden Anfangs 0 Beispiel: Index V direkt abgebildet 011 Anfangszustand -> Zeilen, 1 Wort/Zeile Tag Data 11

12 Cache-Beispiel: Wortadresse Binäre Adresse Treffer Cache Block Miss 110 Index V Y 111 Tag Data 10 Mem[10110] 12

13 Cache-Beispiel: Wortadresse Binäre Adresse Treffer Cache Block Miss 010 Index V Y Y 111 Tag Daten 11 Mem[11010] 10 Mem[10110] 13

14 Cache-Beispiel: Wortadresse Binäre Adresse Treffer Cache Block Hit Hit 010 Index V Y Y 111 Tag Daten 11 Mem[11010] 10 Mem[10110] 14

15 Cache-Beispiel: Wortadresse Binäre Adresse Treffer Cache Block Miss Miss Hit 000 Index V Tag Daten 000 Y 10 Mem[10000] Y 11 Mem[11010] 011 Y 00 Mem[00011] Y 10 Mem[10110]

16 Cache-Beispiel: Wortadresse Binäre Adresse Treffer Cache Block Miss 010 Index V Tag Daten 000 Y 10 Mem[10000] Y 10 Mem[10010] 011 Y 00 Mem[00011] Y 10 Mem[10110]

17 Aufteilung der Adresse (1 Wort pro Block) 17

18 Cache-Beispiel mit grösserem Cacheblock Cache mit 64 Blöcken und 16 Bytes pro Block Auf welchen Block die Speicheradresse 1200 abgebildet? Blockadresse im Speicher: floor(1200/16) = 75 floor: Abrundungsfunktion floor(x): Die größte ganze Zahl, die kleiner oder gleich x ist: Blocknummer im Cache: 75 modulo 64 = Tag Index Offset 22 bits 6 bits 4 bits 18

19 Aufteilung der Adresse (16 Worte pro Block), 256 Cacheblöcke 19

20 Cache-Speicher, Speicheradressierung Speicheradressierung: 32 Bit Speicheradresse (232= Adressen) Speicheradressierung: Speicherwort: 4 Byte (2w) Speicherzeile: 16 Worte (2n) Speicherzeilen: 232-n-w = Zeilen Anz. Blöcke im Cache: 1024 (2m) Adress-Tag: 32-(n+m+w) Bits Cache speichert: Adress-Tag Kopie der Speicherzeile 20

21 Cache-Speicher, Speicheradressierung Wenn Wort aus Hauptspeicher gelesen werden soll, prüft Cache-Logik, ob Wort bereits im Cache ist cache hit: Trefferrate = Treffer/Zugriffe (hit rate) Wenn nicht cache miss, dann muss Wort aus dem HS gelesen werden. Wird gleichzeitig im Cache gespeichert: Fehlzugriffsrate = 1- Trefferrate, Fehlerzugriffszeit (miss rate/penalty) Soll ein (verändertes) Wort geschrieben werden, muss dies sowohl im Cache als auch im HS geschehen write through. Andere Strategien schreiben nur in Cache und markieren Eintrag (dirty-bit) 21

22 Cache-Organisation: Lesen 22

23 Cache-Organisation: Direkt abgebildet (Direct mapped): Ein Datenwort kann genau in einem Eintrag abgelegt sein. Voll assoziativ (Fully associative ): Ein Datenwort kann in einem beliebigen Cache-Eintrag abgelegt sein. Satz-assoziativ (Set associative): Ein Datenwort kann in wenigen Cache-Einträgen (typischerweise 2 bis 8) abgelegt sein. 23

24 Assoziativer Cache im Vergleich Adresse 12: 12 mod 8 = 4 Adresse 12: 12 mod 4 = 0 24

25 Direkt abbildender Cache 25

26 Voll assoziativer Cache 26

27 -fach satzassoziativer Cache 27

28 Assoziativer Cache: Ein Cache mit 8 Daten 28

29 Beispiel: Kleiner Cache aus vier 1-Wort Blöcken Direkt abgebildet Cacheindex = Blockadresse modulo 4 5 Fehlzugriffe Blockadresse Cache Index Treffer Cache Inhalt nach Zugriff Index 0 Index 1 Index nein Mem[0] 8 0 nein Mem[8] 0 0 nein Mem[0] 6 2 nein Mem[0] Mem[6] 8 0 nein Mem[8] Mem[6] Index 3 29

30 Beispiel: Kleiner Cache aus vier 1-Wort Blöcken 2-fach satzassoziativ Cacheindex = Blockadresse modulo 2 4 Fehlzugriffe Blockadresse Cache Index Treffer Cache Inhalt nach Zugriff Satz 0 Satz nein Mem[0] 8 0 nein Mem[0] Mem[8] 0 0 ja Mem[0] Mem[8] 6 0 nein Mem[0] Mem[6] 8 0 nein Mem[8] Mem[6] Satz 1 Satz 1 30

31 Beispiel: Kleiner Cache aus vier 1-Wort Blöcken vollassoziativ Cacheindex = Blockadresse 3 Fehlzugriffe Blockadresse Treffer Cache Inhalt nach Zugriff Satz 0 Satz 1 Satz 2 0 nein Mem[0] 8 nein Mem[0] Mem[8] 0 ja Mem[0] Mem[8] 6 nein Mem[0] Mem[8] Mem[6] 8 ja Mem[0] Mem[8] Mem[6] Satz 3 31

32 Grad der Assoziativität? Höhere Assoziativität verringert die Fehlzugriffsrate Simulation eines Datencaches mith 64kB, 16-Worte pro Block, SPEC fach: 10.3% 2-fach: 8.6% 4-fach: 8.3% 8-fach: 8.1% Gesamtgrösse des Caches ist abhängig von der gewählten Organisation bei gleicher Grösse für die Daten (Beispiel) Simulation 32

33 Betrachtung der Blockgrösse Grössere Blöcke reduzieren die Fehlzugriffsrate aufgrund räumlicher Lokalität Fehlzugriffsrate steigt, falls Blockgrosse zu einem wesentlichen Teil der Cachegrösse wird Wenige Blöcke im Cache, grösserer Wettbewerb um Blöcke Fehlzugriffsaufwand steigt i.d.r. mit grösseren Blöcken 33

34 Cache Kenngrößen Liegt ein gesuchtes Wort im Cache, erhält man Treffer (hit). Trefferrate a in Prozent (hit rate). Liegt gesuchtes Wort nicht im Cache (Fehlzugriff, miss), muss es aus dem Speicher gelesen werden: Fehlzugriffsrate (1-a) in Prozent (miss rate). Zugriffszeit bei Treffer (hit time) ist die Zeit für den Zugriff auf das Element plus die Zeit um festzustellen, ob der Zugriff ein Treffer (oder ein Fehlzugriff) ist. Mit Zugriffszeit (hit time) tc eines Wortes im Cache und der Zugriffszeit tm eines Wortes im Hauptspeicher ist die mittlere Zugriffszeit ta auf ein Wort: ta = a tc + (1-a) tm Fehlzugriffsaufwand (miss penalty) ist die Zeit, die benötigt wird, um einen Block von einer unteren Ebene in eine höhere Ebene der Speicherhierarchie zu laden. Diese beinhaltet die Zeit für die Übertragung des Blocks in die höhere Ebene, auf der der Fehlzugriff stattgefunden hat, sowie die Zeit für den Zugriff auf den Block durch den Prozessor 34

35 Messen der Cache-Leistung Komponenten der CPU Zeit CPU-Ausführungstaktzyklen Beinhalten Kosten für Cachetreffer Speicherstillstandszyklen Hauptsächlich aufrund von Cache-Fehlzugriffen Mit vereinfachenden Annahmen: (weiteres Beispiel) CPU-Zeit = (CPU-Ausführungszyklen + Speicherstillstandszyklen) x Taktzykluszeit Speicherstillstandszyklen = Lesestillstandszyklen + Schreibstillstandszyklen Lesestillstandszyklen = Leseoperationen / Programm x Lesefehlzugriffsrate x Lesefehlzugriffsaufwand Schreibstillstandszyklen = Schreiboperationen / Programm x Schreibfehlzugriffsrate x Schreibfehlzugriffsaufwand + Schreibpufferstillstände 35

36 Cache Eigenschaften und Ersetzungsstrategien Ist ein Wort nicht im Cache vorhanden, muss aus Speicher in den Cache geladen werden. Bei Direkt abgebildetem Cache ist Zuordnung der Adresse des Wortes zu einer Cache-Zeile eindeutig. Beim Assoziativen Cache sind mehrere Strategien möglich: Wähle Zeile, auf die am längsten nicht mehr zugegriffen wurde (LRU) Einfach für 2-fach, vertretbar für 4-fach, zu aufwändig für höhere Assoziativität Wähle zufällig eine Zeile aus Ähnliche Trefferraten wie LRU bei hoher Assoziativität 36

37 Schreiben von Daten Beim Schreiben von Daten muss sichergestellt sein, dass Daten in Cache und Hauptspeicher konsistent bleiben. Mehrere Strategien: o-write: Wort nur in Hauptspeicher (HS) schreiben, nicht in Cache. Zugehörige Zeile im Cache als ungültig markieren. langsam, Schreiben in HS, ggf. Lesen aus HS Write-Through: Cache- und Hauptspeicher beide schreiben. Cache-Zeile bleibt gültig. Übliches Verfahren. langsame Schreibzugriffe. Write-Back: ur Cache-Speicher schreiben, aber Cache-Zeile als modifiziert ( Dirty ) markieren. Vor Überschreiben der Zeile muss der Inhalt in Hauptspeicher gesichert werden. Dirty-Bit ist der Cache-Zeile angefügt, wird beim Laden einer Zeile aus dem HS gelöscht, beim Schreiben eines Wortes in der Cache-Zeile gesetzt. 37

38 Lesen von Daten Zwei prinzipielle Lese- und Füllstrategien on demand, demand fetching Beim ersten Lesen einer Information aus dem Hauptspeicher wird die gesamte Zeile auch in den Cache übertragen. Benötigte Blöcke, die noch nicht im Cache liegen, werden nachgeladen. Diese Strategie wird von jedem Cache verwendet Prädiktiv, prefetch Es wird versucht, vorherzusagen, welche Speicherzeilen zukünftig gebraucht werden und diese während Leerlaufphasen schon in den Cache vorgeladen. Ein zweiter Programmzähler (remote PC) im Cache wird dazu verwendet, den künftigen Programmverlauf vorherzubestimmen und entsprechende Blöcke vorzuladen. 38

39 Cache Speicher in der Harvard Architektur Kopien von Befehlen Cache Adresse Befehle Befehle Adresse Befehle Register Daten Prozessor Adresse Daten Kopien von Daten Adresse Daten Cache Speicher 39

40 Cache-Organisation Level-1: kb Level-2: 512 kb 1 MB Level-3: ~ MB SRAM Um Rechner weiter zu optimieren werden mehrere Cache Ebenen eingefügt. kleiner, schneller, teurer größer, langsamer, billiger Split-Cache, verbessert Bandbreite und Latenz: Level-1: Cache für Instruktionen und Daten Level-2: vereint (unified) für Instruktionen und Daten Level-3: auf Karten-Ebene (Static RAM) 40

41 Multilevel Cache Auslegung Beispiel (1): Gegeben CPU Verarbeitung Clocks per Instruktion (CPI) = 1, Taktrate = 4GHz Fehlzugriffsrate für Instruktionen = 2% Zugriffszeit auf Hauptspeicher = 100ns Mit nur einem (Primär-)Cache: Fehlerzugriffsaufwand = 100ns/0.25ns = 400 Takte Effektive CPI = = 9 41

42 Multilevel Cache Auslegung Beispiel (2): L-1 und L-2 Cache (L1: Primärcache, L2: Sekundärcache) L-2 Cache: Zugriffszeit 5ns Globale Fehlzugriffsrate zum Hauptspeicher = 0.5% Fehlzugriff auf L-1 Cache mit L-2 Treffer Fehlerzugriffsaufwand = 5ns/0.25ns = 20 Takte Fehlzugriff auf L-1 Cache und L-2 Cache Zusätzl. Fehlerzugriffsaufwand = 400 Takte CPI = = 3.4 Performanzverhältnis = 9/3.4 =

43 Speichermanagement Kopplung von CPU- und Speicheradresse Virtuelle und physikalische Adressen 43

44 Speichermanagement Virtuelle und physikalische Adressen Benutzung der Hauptspeichers als Cache für die Festplatte Kopplung von CPU- und Speicheradresse Bisher sind wir davon ausgegangen, dass die intern vom Prozessor verwendete Adresse identisch mit der externen Speicheradresse ist. Das aber hat achteile: Anpassung der Speicherbelegung eines Programms an die Rechnerkonfiguration notwendig. Bei Multitasking Zuweisung eines speziellen Speicherbereichs für jeden Task nötig. 44

45 Stack-, Heap-, Daten- und Code-Bereich Größe von Daten- und Code-Bereich wird beim Übersetzen vom Compiler ermittelt (feste Größe für ein Programm). Stack und Heap besitzen dynamische Größen, die vom Programmablauf abhängen. Stack: z.b. Lokale Variable, Heap: dynamische Objekte Der freie Bereich zwischen Stack und Heap sollte immer möglichst groß gewählt werden um Speicherunterlauf zu vermeiden. Mögliche Größe hängt aber vom Rechner (Ressourcen) ab. 45

46 Speicherzuweisung bei Multitasking Bei Multitasking muss beim Start einer Task ein freier Speicherbereich gesucht und die Task an diesen Speicherbereich durch Linken angepasst werden. Jede Task benötigt einen eigenen Ausschnitt aus dem gesamten Adressraum, der nicht von anderen Tasks verwendet werden darf. Wenn ein Task terminiert, entsteht eine Lücke im Speicher. Passt ein neuer Task nicht genau in diese Lücke, entstehen nach und nach ungenutzte Speicherfragmente. 46

47 Kopplung CPU- und Speicheradresse Eine feste Kopplung von CPU-interner Adresse und externer Speicheradresse verhindert flexible und dynamische utzung des Hauptspeichers. Dies ist nur bei Embedded Systemen akzeptabel. In allen anderen Systemen, welche Flexibilität erfordern, ist die Entkopplung interner und externer Adressen notwendig, z.b. Großrechner, Workstations, PC s etc. Entkopplung der CPU-internen (virtuellen) Adresse und der Speicheradresse (physikalische Adresse) schafft die notwendige Flexibilität. Die Umsetzung erfolgt durch eine Hardwareeinheit, diese nennt man Memory Management Unit (MMU) oder Paging Unit 47

48 virtuelle und physikalische Adresse Der virtuelle und der physikalische Speicherbereich wird in Speicherseiten fester Größe aufgeteilt pages (Kacheln) Übliche Seitengrößen sind 4 kbytes oder 8 kbytes (2er Potenzen), aber auch deutlich größere Seiten werden verwendet. Virtuelle Speicherseiten werden durch die MMU physikalischen Seiten zugeordnet. Ist bei Zugriff auf eine virtuelle Seite keine physikalische zugeordnet, liegt ein Seitenfehler (page fault) vor. Die MMU erzeugt dann in der CPU einen Interrupt, die Ausnahmebehandlung lädt die fehlende Seite. 48

49 virtuelle Adressierung durch MMU Physikalischer Adressraum: 15 Bit Beispiel: eine 32 Bit-Adresse wird zerlegt in 20 Bit Seiten-ummer und 12 Bit Offset. Der Offset ist die Adresse des gesuchten Byte in der 4096 Byte (212 Bit) großen Seite. Mit der Seitennummer wird in der Tabelle die physikalische Speicherseite gesucht. Physik. Speicherseite + Offset = Adresse des Operanden im Speicher. 49

50 virtuelle Adressierung durch MMU (2) Die Seitentabelle liegt im physikalischen Speicher, ihre Anfangsadresse ist im Register Tabellenbasis abgelegt. Index auf Seitentabelle = Tabellenbasis + Tabellenindex Adresse Operand = physik. Adresse der Seite + Offset 50

51 Beschleunigung der Adressumsetzung Sehr grosse Seitentabellen im Hauptspeicher (Beispiel) Zugriff auf Seitentabelle im physikalischen Speicher und anschließender Zugriff auf die physikalische Speicherzelle: Zweifacher Zugriff auf Speicher langsam! Lösung: Hardware-Erweiterung Assoziativspeicher, in dem Paare aus Tabellenindex und zugehöriger Basisadresse der physikalischen Speicherseite aus vorangegangenen Zugriffen gespeichert sind. Translation Lookaside Buffer (TLB) 51

52 Translation-Lookaside-Buffer (TLB) Virtuelle Adresse wird an TLB angelegt: Für Tabellenindex ist Eintrag vorhanden Hit. Kein Eintrag: Basisadresse für physik. Speicherseite wird aus Seitentabelle beschafft und im TLB eingetragen. In beiden Fällen: Physik. Adresse = Basisadresse + Offset 52

53 Translation-Lookaside-Buffer (TLB) (2) TLB enthält aktuellen Tabellenindex und Seitenbasis. Fehlt der Eintrag, erfolgt Zugriff auf Seitentabelle über Hauptspeicher. 53

54 Seitentabelle ohne Translation-Lookaside-Buffer (TLB) 54

55 Seitentabelle mit Translation-Lookaside-Buffer (TLB) 55

56 Virtuelle Adressierung (Zusammenf.) Virtuelle Adressierung erlaubt, einen großen Adressraum mit kleinerem physikalischem Speicher flexibel zu realisieren. ur ein Teil der virtuellen Seiten wird im physikalischen Speicher gehalten. icht benötigte Seiten werden auf Festplatte ausgelagert (Page-, Swap-Datei). Ersetzung erfolgt nach Least Recently Used, FiFo oder anderen Mechanismen. Benötigte aber nicht vorhandene Seiten werden von der Festplatte nachgeladen (Paging) und ersetzen ältere Seiten. 56

Rechnergrundlagen SS Vorlesung

Rechnergrundlagen SS Vorlesung Rechnergrundlagen SS 2007 13. Vorlesung Inhalt Cache Lesen Schreiben Überschreiben Memory Management Unit (MMU) Translation Lookaside Buffer (TLB) Klausurvorbereitung Inhalte der Klausur Rechnergrundlagen

Mehr

Virtueller Speicher und Memory Management

Virtueller Speicher und Memory Management Virtueller Speicher und Memory Management Speicher-Paradigmen Programmierer ein großer Adressraum linear adressierbar Betriebssystem eine Menge laufender Tasks / Prozesse read-only Instruktionen read-write

Mehr

Technische Informatik 1 - HS 2017

Technische Informatik 1 - HS 2017 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

Mehr

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.

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. 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 32 Bit Adresse 31 3 29... 2 1 SS 212 Grundlagen der Rechnerarchitektur

Mehr

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

é Er ist software-transparent, d.h. der Benutzer braucht nichts von seiner Existenz zu wissen. Adreßbus Cache- Control Datenbus 4.2 Caches é Cache kommt aus dem Französischen: cacher (verstecken). é Er kann durch ein Anwendungsprogramm nicht explizit adressiert werden. é Er ist software-transparent, d.h. der Benutzer braucht nichts

Mehr

Grundlagen der Rechnerarchitektur. Speicher

Grundlagen der Rechnerarchitektur. Speicher Grundlagen der Rechnerarchitektur Speicher Übersicht Speicherhierarchie Cache Grundlagen Verbessern der Cache Performance Virtueller Speicher SS 2012 Grundlagen der Rechnerarchitektur Speicher 2 Speicherhierarchie

Mehr

Grundlagen der Rechnerarchitektur. Speicher

Grundlagen der Rechnerarchitektur. Speicher Grundlagen der Rechnerarchitektur Speicher Übersicht Speicherhierarchie Cache Grundlagen Verbessern der Cache Performance Virtueller Speicher SS 2012 Grundlagen der Rechnerarchitektur Speicher 2 Speicherhierarchie

Mehr

Cache Blöcke und Offsets

Cache Blöcke und Offsets Cache Blöcke und Offsets Ein Cache Eintrag speichert in der Regel gleich mehrere im Speicher aufeinander folgende Bytes. Grund: räumliche Lokalität wird wie folgt besser ausgenutzt: Bei Cache Miss gleich

Mehr

Besprechung des 9. Übungsblattes Virtuelle Speicherverwaltung Aufgaben

Besprechung des 9. Übungsblattes Virtuelle Speicherverwaltung Aufgaben Themen heute Besprechung des 9. Übungsblattes Virtuelle Speicherverwaltung Aufgaben Besprechung des 9. Übungsblattes Aufgabe 2 Ist in einer Aufgabe wie hier keine explizite Wortbreite angegeben, nicht

Mehr

Grundlagen der Informatik III Wintersemester 2010/ Vorlesung Dr.-Ing. Wolfgang Heenes

Grundlagen der Informatik III Wintersemester 2010/ Vorlesung Dr.-Ing. Wolfgang Heenes Grundlagen der Informatik III Wintersemester 2010/2011 15. Vorlesung Dr.-Ing. Wolfgang Heenes int main() { printf("hello, world!"); return 0; } msg: main:.data.asciiz "Hello, world!".text.globl main la

Mehr

Grob-Struktur des Prozessor-Speichersystems

Grob-Struktur des Prozessor-Speichersystems 2.3.2 Speicherstruktur (1) Grob-Struktur des Prozessor-Speichersystems Chipsatz (Erklärung s. später, Folie 104) 22.4.-27.5.2013, Folie 52 2.3.2 Speicherstruktur (2) Zugriff Prozessor zumeist auf schnelle

Mehr

Cache Grundlagen. Schreibender Cache Zugriff. SS 2012 Grundlagen der Rechnerarchitektur Speicher 22

Cache Grundlagen. Schreibender Cache Zugriff. SS 2012 Grundlagen der Rechnerarchitektur Speicher 22 Cache Grundlagen Schreibender Cache Zugriff SS 212 Grundlagen der Rechnerarchitektur Speicher 22 Eine einfache Strategie Schreibt man nur in den Cache, werden Cache und darunter liegender Speicher inkonsistent.

Mehr

RO-Tutorien 15 und 16

RO-Tutorien 15 und 16 Tutorien zur Vorlesung Rechnerorganisation Tutorienwoche 10 am 29.06.2011 1 Christian A. Mandery: KIT Universität des Landes Baden-Württemberg und nationales Grossforschungszentrum in der Helmholtz-Gemeinschaft

Mehr

Tutorium Rechnerorganisation

Tutorium Rechnerorganisation Woche 10 Tutorien 3 und 4 zur Vorlesung Rechnerorganisation 1 Christian A. Mandery: KIT Universität des Landes Baden-Württemberg und nationales Grossforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu

Mehr

Grundlagen der Rechnerarchitektur

Grundlagen der Rechnerarchitektur Grundlagen der Rechnerarchitektur Speicher Übersicht Speicherhierarchie Cache Grundlagen Verbessern der Cache Performance Virtueller Speicher SS 2012 Grundlagen der Rechnerarchitektur Speicher 2 Speicherhierarchie

Mehr

In heutigen Computern findet man schnellen/teuren als auch langsamen/billigen Speicher

In heutigen Computern findet man schnellen/teuren als auch langsamen/billigen Speicher Speicherhierarchie In heutigen Computern findet man schnellen/teuren als auch langsamen/billigen Speicher Register Speicherzellen, direkt mit der Recheneinheit verbunden Cache-Speicher Puffer-Speicher

Mehr

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

Besprechung des 8. Übungsblattes Einführung in Caches Cache-Organisation Cache-Ersetzungsstrategien Aufgaben (an der Tafel) Testklausur Themen heute Besprechung des 8. Übungsblattes Einführung in Caches Cache-Organisation Cache-Ersetzungsstrategien Aufgaben (an der Tafel) Testklausur Besprechung des 8. Übungsblattes Aufgabe 2.6. In diesem

Mehr

Grundlagen der Informationsverarbeitung:

Grundlagen der Informationsverarbeitung: Grundlagen der Informationsverarbeitung: Speicherhierarchie Prof. Dr.-Ing. habil. Ulrike Lucke Durchgeführt von Prof. Dr. rer. nat. habil. Mario Schölzel Maximaler Raum für Titelbild (wenn kleiner dann

Mehr

Cache-Speicher. Design Digitaler Systeme. Prof. Dr.-Ing. Rainer Bermbach

Cache-Speicher. Design Digitaler Systeme. Prof. Dr.-Ing. Rainer Bermbach Cache-Speicher Design Digitaler Systeme Prof. Dr.-Ing. Rainer Bermbach Übersicht Cache-Speicher Warum Cache-Speicher? Cache-Strukturen Aufbau und Organisation von Caches Cache-Architekturen Cache-Strategien

Mehr

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

Technische Informatik 1 - Übung & 22. Dezember Philipp Miedl Technische Informatik 1 - Übung 11 21. & 22. Dezember 2017 Philipp Miedl Philipp Miedl 21.12.2017 22.12.2017 1 Motivation Aufteilen des Hauptspeichers auf mehrere Prozesse Philipp Miedl 21.12.2017 22.12.2017

Mehr

Speicherarchitektur (1)

Speicherarchitektur (1) Speicherarchitektur () Die 3 wichtigsten Speichertechnologien: Technologie Typische Zugriffszeiten $ pro Megabyte 997 SRAM 5 25 ns $00 $250 DRAM 60 20 ns $5 $0 Magnetplatten 0 20 Millionen ns $0,0 $0,20

Mehr

Speicher. Speicher. Speicherhierarchie. Speicher. Interessante Zahlen:

Speicher. Speicher. Speicherhierarchie. Speicher. Interessante Zahlen: Übersicht 1 Einleitung Hauptspeicher 2 Hauptspeicher 3 Caches, Cache-Kohärenz Dr.-Ing. Volkmar Sieh Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2008/2009

Mehr

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

, 2014W Übungsgruppen: Mo., Mi., VU Technische Grundlagen der Informatik Übung 7: Speichermanagement 183.579, 2014W Übungsgruppen: Mo., 12.01. Mi., 14.01.2015 Aufgabe 1: Cache-Adressierung Ein Prozessor mit einer Adresslänge von 20 Bit

Mehr

Grundlagen der Informatik III Wintersemester 2010/2011

Grundlagen der Informatik III Wintersemester 2010/2011 Grundlagen der Informatik III Wintersemester 2010/2011 Wolfgang Heenes, atrik Schmittat 12. Aufgabenblatt 07.02.2011 Hinweis: Der Schnelltest und die Aufgaben sollen in den Übungsgruppen bearbeitet werden.

Mehr

Aufgabe 4 : Virtueller Speicher

Aufgabe 4 : Virtueller Speicher Sommer 216 Technische Informatik I Lösungsvorschlag Seite 16 Aufgabe 4 : Virtueller Speicher (maximal 27 Punkte) 4.1: Generelle Funktionsweise (maximal 5 Punkte) (a) (1 Punkt) Nennen Sie zwei Gründe, weshalb

Mehr

Vorlesung: Rechnerstrukturen, Teil 2 (Modul IP7)

Vorlesung: Rechnerstrukturen, Teil 2 (Modul IP7) Vorlesung: Rechnerstrukturen, Teil 2 (Modul IP7) Vorlesung: Rechnerstrukturen, Teil 2 (Modul IP7) J. Zhang zhang@informatik.uni-hamburg.de Universität Hamburg AB Technische Aspekte Multimodaler Systeme

Mehr

Tutorium Rechnerorganisation

Tutorium Rechnerorganisation Woche 11 Tutorien 3 und 4 zur Vorlesung Rechnerorganisation 1 Christian A. Mandery: KIT Universität des Landes Baden-Württemberg und nationales Grossforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu

Mehr

Teil 2: Speicherstrukturen

Teil 2: Speicherstrukturen Inhalt Teil 2: Speicherstrukturen Hauptspeicher Cache Assoziativspeicher Speicherverwaltungseinheit ( Memory Management Unit ) 1 Virtueller Speicher Trennung von virtuellem Adreßraum (mit virtuellen Adressen)

Mehr

Lösungsvorschlag zur 5. Übung

Lösungsvorschlag zur 5. Übung Prof. Frederik Armknecht Sascha Müller Daniel Mäurer Grundlagen der Informatik 3 Wintersemester 09/10 Lösungsvorschlag zur 5. Übung 1 Präsenzübungen 1.1 Schnelltest a) Welche Aussagen über Caches sind

Mehr

Übung Praktische Informatik II

Übung Praktische Informatik II Übung Praktische Informatik II FSS 2009 Benjamin Guthier Lehrstuhl für Praktische Informatik IV Universität Mannheim guthier@pi4.informatik.uni-mannheim.de 22.05.09 11-1 Heutige große Übung Ankündigung

Mehr

Wie groß ist die Page Table?

Wie groß ist die Page Table? Wie groß ist die Page Table? Im vorigen (typischen) Beispiel verwenden wir 20 Bits zum indizieren der Page Table. Typischerweise spendiert man 32 Bits pro Tabellen Zeile (im Vorigen Beispiel brauchten

Mehr

6 Exkurs: Assoziativspeicher

6 Exkurs: Assoziativspeicher 6 Exkurs: Assoziativspeicher alternative Möglichkeit der Speicherung von Informationen in einem Computer: Assoziativspeicher (inhaltsadressierbarer Speicher bzw. CAM = Content Addressable Memory) : bei

Mehr

Grundlagen der Informatik III Wintersemester 2010/2011

Grundlagen der Informatik III Wintersemester 2010/2011 Grundlagen der Informatik III Wintersemester 21/211 Wolfgang Heenes, atrik Schmittat 12. Aufgabenblatt mit Lösungsvorschlag 7.2.211 Hinweis: Der Schnelltest und die Aufgaben sollen in den Übungsgruppen

Mehr

6 Exkurs: Assoziativspeicher (2) 6 Exkurs: Assoziativspeicher. 7.1 Speicherhierarchie. 7 Caches

6 Exkurs: Assoziativspeicher (2) 6 Exkurs: Assoziativspeicher. 7.1 Speicherhierarchie. 7 Caches 6 Exkurs: Assoziativspeicher alternative Möglichkeit der Speicherung von Informationen in einem Computer: Assoziativspeicher (inhaltsadressierbarer Speicher bzw. CAM = Content Addressable Memory) : bei

Mehr

Lösung von Übungsblatt 2

Lösung von Übungsblatt 2 Lösung von Übungsblatt 2 Aufgabe 1 (Digitale Datenspeicher) 1. Nennen Sie einen digitalen Datenspeicher, der mechanisch arbeitet. Lochstreifen, Lochkarte, CD/DVD beim Pressen. 2. Nennen Sie zwei rotierende

Mehr

Linux Paging, Caching und Swapping

Linux Paging, Caching und Swapping Linux Paging, Caching und Swapping Inhalte Paging Das Virtuelle Speichermodell Die Page Table im Detail Page Allocation und Page Deallocation Memory Mapping & Demand Paging Caching Die verschiedenen Caches

Mehr

Betriebssysteme Teil 10 B: Fragen rund um Seitenfehler

Betriebssysteme Teil 10 B: Fragen rund um Seitenfehler Betriebssysteme Teil 10 B: Fragen rund um Seitenfehler 1 Überlegungen Wenn wir einige Seiten eines Programms in den Speicher laden, brauchen wir eine Strategie, welche Seiten als nächstes geladen werden

Mehr

Lösungsvorschlag zur 6. Übung

Lösungsvorschlag zur 6. Übung rof. Frederik Armknecht Sascha Müller Daniel Mäurer Grundlagen der Informatik 3 Wintersemester 9/1 Lösungsvorschlag zur 6. Übung 1 räsenzübungen 1.1 Schnelltest a) Caches und virtueller Speicher können

Mehr

Paging. Einfaches Paging. Paging mit virtuellem Speicher

Paging. Einfaches Paging. Paging mit virtuellem Speicher Paging Einfaches Paging Paging mit virtuellem Speicher Einfaches Paging Wie bisher (im Gegensatz zu virtuellem Speicherkonzept): Prozesse sind entweder ganz im Speicher oder komplett ausgelagert. Im Gegensatz

Mehr

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

Cache. Dr.-Ing. Volkmar Sieh. Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2011 Cache Dr.-Ing. Volkmar Sieh Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2011 Cache 1/53 2012-02-29 Einleitung Hauptspeicherzugriffe sind langsam die

Mehr

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

, 2015W Übungsgruppen: Mo., Mi., VU Technische Grundlagen der Informatik Übung 7: Speichermanagement 183.579, 2015W Übungsgruppen: Mo., 11.01. Mi., 13.01.2016 Aufgabe 1: Cache-Adressierung Ihr Cachingsystem soll 32 GiB an Speicher auf

Mehr

Echtzeitbetriebssysteme

Echtzeitbetriebssysteme Speicherverwaltung (Memory Management) Aufgaben der Memory-Management-Unit ist l der Speicherschutz und l die Adressumsetzung Wird durch Hardware unterstützt l Memory Management Unit (MMU) l MMU wird vom

Mehr

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

Proseminar Konzepte von Betriebssystem- Komponenten (KVBK) Vortrag zum Thema: Speicheraddressierung, Segmentierung, Paging Proseminar Konzepte von Betriebssystem- Komponenten (KVBK) Vortrag zum Thema: Speicheraddressierung, Segmentierung, Paging Grundlegende Bedeutung von Speicheradressierung: Wie sind die Daten auf Dem Speicher

Mehr

Algorithm Engineering. Alexander Kröller, Abteilung Algorithmik, IBR

Algorithm Engineering. Alexander Kröller, Abteilung Algorithmik, IBR #7 Terminchaos Nächste Vorlesungen: 27. 5. Vertretung durch Prof. Fekete 3. 6. Exkursionswoche 10. 6. Vertretung durch N.N. 17. 6. back to normal... Experiment Durchlaufe zwei gleichgrosse Arrays: Sortierte

Mehr

Einführung in die technische Informatik

Einführung in die technische Informatik Einführung in die technische Informatik Christopher Kruegel chris@auto.tuwien.ac.at http://www.auto.tuwien.ac.at/~chris Betriebssysteme Aufgaben Management von Ressourcen Präsentation einer einheitlichen

Mehr

(Cache-Schreibstrategien)

(Cache-Schreibstrategien) Übungsblatt 2 Aufgabe 1 (Digitale Datenspeicher) 1. Nennen Sie einen digitalen Datenspeicher, der mechanisch arbeitet. 2. Nennen Sie zwei rotierende magnetische digitale Datenspeicher. 3. Nennen Sie zwei

Mehr

Leichtgewichtsprozesse

Leichtgewichtsprozesse Leichtgewichtsprozesse häufiger Prozeßwechsel stellt in einem Betriebssystem eine hohe Belastung dar; auch erfordert die Generierung eines neuen Prozesses viele System-Resourcen in vielen Anwendungen werden

Mehr

Leichtgewichtsprozesse

Leichtgewichtsprozesse Leichtgewichtsprozesse häufiger Prozeßwechsel stellt in einem Betriebssystem eine hohe Belastung dar; auch erfordert die Generierung eines neuen Prozesses viele System-Resourcen in vielen Anwendungen werden

Mehr

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

Schreiben von Pages. Schreiben einer Page in den Swap Space ist sehr teuer (kostet millionen von CPU Zyklen). Schreiben von Pages Schreiben einer Page in den Swap Space ist sehr teuer (kostet millionen von CPU Zyklen). Write Through Strategie (siehe Abschnitt über Caching) ist hier somit nicht sinnvoll. Eine sinnvolle

Mehr

Das Konzept der Speicherhierarchie

Das Konzept der Speicherhierarchie Das Konzept der Speicherhierarchie Small is fast, daher sind kleine Speicher schneller (und kosten mehr pro Byte). Vergrößerung von Speichern und schnellerer Zugriff sind aber Schlüsselfunktionen in der

Mehr

Rechnernetze und Organisation

Rechnernetze und Organisation Memory 1 Übersicht Motivation Speicherarten Register SRAM, DRAM Flash Speicherhierarchie Cache Virtueller Speicher 2 Motivation Speicher ist zentraler Bestandteil eines Computers neben Prozessor CPU Computer

Mehr

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

Besprechung der Probeklausur Übungsscheine, inoffizielle Evaluation Übungsaufgaben Noch Fragen? Themen heute Besprechung der Probeklausur Übungsscheine, inoffizielle Evaluation Übungsaufgaben Noch Fragen? Besprechung der Probeklausur Probeklausur wird jetzt ausgeteilt Notenschlüssel: 45 37,5 Punkte:

Mehr

Lösung von Übungsblatt 2

Lösung von Übungsblatt 2 Lösung von Übungsblatt 2 Aufgabe 1 (Digitale Datenspeicher) 1. Nennen Sie einen digitalen Datenspeicher, der mechanisch arbeitet. Lochstreifen, Lochkarte, CD/DVD beim Pressen. 2. Nennen Sie zwei rotierende

Mehr

Übung zu Einführung in die Informatik # 10

Übung zu Einführung in die Informatik # 10 Übung zu Einführung in die Informatik # 10 Tobias Schill tschill@techfak.uni-bielefeld.de 15. Januar 2016 Aktualisiert am 15. Januar 2016 um 9:58 Erstklausur: Mi, 24.02.2016 von 10-12Uhr Aufgabe 1* a),

Mehr

RO-Tutorien 17 und 18

RO-Tutorien 17 und 18 RO-Tutorien 17 und 18 Tutorien zur Vorlesung Rechnerorganisation Christian A. Mandery TUTORIENWOCHE 12 AM 19.07.2012 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der

Mehr

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

Betriebssysteme BS-S SS Hans-Georg Eßer. Foliensatz S: Speicherverwaltung. Dipl.-Math., Dipl.-Inform. v1.0, 2015/04/14 BS-S Betriebssysteme SS 2015 Hans-Georg Eßer Dipl.-Math., Dipl.-Inform. Foliensatz S: Speicherverwaltung v1.0, 2015/04/14 Betriebssysteme, SS 2015 Hans-Georg Eßer Folie S-1 Übersicht: BS Praxis und BS

Mehr

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

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

Mehr

Technische Realisierung (1)

Technische Realisierung (1) Technische Realisierung () Einfachstes Modell: Prozess (Daten+Code) befindet sich im Hintergrundspeicher Bei teilweise eingelagerten Prozessen: Zusätzlich Teile im Hauptspeicher Logische Adressen überdecken

Mehr

Rechnerorganisation. 1. Juni 201 KC Posch

Rechnerorganisation. 1. Juni 201 KC Posch .6.2 Rechnerorganisation. Juni 2 KC Posch .6.2 2 .6.2 Front Side Bus Accelerated Graphics Port 28 MHz Front Side Bus North Bridge RAM idge South Bri IDE USB PCI Bus 3 .6.2 Front Side Bus Front Side Bus

Mehr

Technische Informatik 2 Speichersysteme, Teil 3

Technische Informatik 2 Speichersysteme, Teil 3 Technische Informatik 2 Speichersysteme, Teil 3 Prof. Dr. Miroslaw Malek Sommersemester 2004 www.informatik.hu-berlin.de/rok/ca Thema heute Virtueller Speicher (Fortsetzung) Translation Lookaside Buffer

Mehr

Vorlesung: Rechnerstrukturen, Teil 2 (Modul IP7)

Vorlesung: Rechnerstrukturen, Teil 2 (Modul IP7) Vorlesung: Rechnerstrukturen, Teil 2 (Modul IP7) Vorlesung: Rechnerstrukturen, Teil 2 (Modul IP7) J. Zhang zhang@informatik.uni-hamburg.de Universität Hamburg AB Technische Aspekte Multimodaler Systeme

Mehr

4.2 Verbesserung der Leistungsfähigkeit von Caches

4.2 Verbesserung der Leistungsfähigkeit von Caches 12 4.2 Verbesserung der Leistungsfähigkeit von Caches Peter Marwedel Informatik 12 TU Dortmund 2014/05/02 Cache-Performanz Bewertungsmaß für die Leistungsfähigkeit einer Speicherhierarchie: Mittlere Zugriffszeit

Mehr

RO-Tutorien 15 und 16

RO-Tutorien 15 und 16 Tutorien zur Vorlesung Rechnerorganisation Tutorienwoche 11 am 06.07.2011 1 Christian A. Mandery: KIT Universität des Landes Baden-Württemberg und nationales Grossforschungszentrum in der Helmholtz-Gemeinschaft

Mehr

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

Technische Informatik I. Übung 3 Speicherhierarchie. v t d 0 d 1 d 2 d 3 0 1 2 3. Technische Informatik I Übung 3. Technische Informatik I Übung 3 Institut für Kommunikationsnetze und Rechnersysteme Technische Informatik I Paul J. Kühn, Matthias Meyer Übung 3 Speicherhierarchie Inhaltsübersicht Aufgabe 3.1 Daten-Cache Aufgabe 3.2 Virtueller Speicher

Mehr

Zwei Möglichkeiten die TLB zu aktualisieren

Zwei Möglichkeiten die TLB zu aktualisieren Zwei Möglichkeiten die TLB zu aktualisieren Die MMU kümmert sich um alles (Hardware-Lösung) sucht die p-entry wenn diese nicht da ist, behandelt direkt das TLB-miss zum Schluss wird die neue p-entry (virt

Mehr

Speicherverwaltung (Swapping und Paging)

Speicherverwaltung (Swapping und Paging) Speicherverwaltung (Swapping und Paging) Rückblick: Segmentierung Feste Einteilung des Speichers in einzelne Segmente 750k 0 Rückblick: Segmentierung Feste Einteilung des Speichers in einzelne Segmente

Mehr

Technische Informatik II Wintersemester 2002/03 Sommersemester 2001. Heiko Holtkamp Heiko@rvs.uni-bielefeld.de

Technische Informatik II Wintersemester 2002/03 Sommersemester 2001. Heiko Holtkamp Heiko@rvs.uni-bielefeld.de Technische Informatik II Wintersemester 2002/03 Sommersemester 2001 Heiko Holtkamp Heiko@rvs.uni-bielefeld.de Speicher ist eine wichtige Ressource, die sorgfältig verwaltet werden muss. In der Vorlesung

Mehr

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

(Prof. Dr. J. Schlichter, WS 2011 / 2012) Übungsleitung: Dr. Wolfgang Wörndl Übung zur Vorlesung Grundlagen Betriebssysteme und Systemsoftware (Prof. Dr. J. Schlichter, WS 2011 / 2012) Übungsleitung: Dr. Wolfgang Wörndl (gbs-ws11@mailschlichter.informatik.tu-muenchen.de) http://www11.in.tum.de/veranstaltungen/grundlagenbetriebssystemeundsystemsoftwarews1112

Mehr

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

Speicherverwaltung. Design Digitaler Systeme. Prof. Dr.-Ing. Rainer Bermbach Speicherverwaltung Design Digitaler Systeme Prof. Dr.-Ing. Rainer Bermbach Übersicht Speicherverwaltung Virtueller Speicher Memory Management Unit Segmentierung Paging Kombination Segmentierung/ Paging

Mehr

2. Ansatzpunkt: Reduktion der Penalty Early Restart und critical word first

2. Ansatzpunkt: Reduktion der Penalty Early Restart und critical word first 2. Ansatzpunkt: Reduktion der Penalty 2.1. Early Restart und critical word first Beide Techniken basieren darauf, die Wartezeit der CPU auf das Mindestmaß zu beschränken. Early restart lädt den Block wie

Mehr

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

Proseminar Konzepte von Betriebssystem-Komponenten (KVBK) Vortrag zum Thema: Speicheraddressierung, Segmentierung, Paging Von Christian Hubert Proseminar Konzepte von Betriebssystem-Komponenten (KVBK) Vortrag zum Thema: Speicheraddressierung, Segmentierung, Paging Von Christian Hubert 1.: Speicherung und Adressierung von Daten Bei der Speicheradressierung

Mehr

Fachbericht Thema: Virtuelle Speicherverwaltung

Fachbericht Thema: Virtuelle Speicherverwaltung Fachbericht 15.10.99 1 HINTERGRÜNDE/ MOTIVATION 2 2 FUNKTIONEN DER SPEICHERVERWALTUNG 2 3 ARTEN DER SPEICHERVERWALTUNG 2 3.1 STATISCHE SPEICHERVERWALTUNG 2 3.2 DYNAMISCHE SPEICHERVERWALTUNG 3 3.2.1 REALER

Mehr

Speicherorganisation

Speicherorganisation Speicherorganisation John von Neumann 1946 Ideal wäre ein unendlich großer, undendlich schneller und undendlich billiger Speicher, so dass jedes Wort unmittelbar, d.h. ohne Zeitverlust, zur Verfügung steht

Mehr

Technische Informatik 1

Technische Informatik 1 Technische Informatik 1 6 Speicherhierarchie Lothar Thiele Computer Engineering and Networks Laboratory Arbeitsprinzipien 6 2 Übersicht Speicherhierarchie Ziele: Dem Benutzer möglichst viel Speicherkapazität

Mehr

2.3 Prozessverwaltung

2.3 Prozessverwaltung Realisierung eines Semaphors: Einem Semaphor liegt genau genommen die Datenstruktur Tupel zugrunde Speziell speichert ein Semaphor zwei Informationen: Der Wert des Semaphors (0 oder 1 bei einem binären

Mehr

Speicherhierarchie, Caches, Consistency Models

Speicherhierarchie, Caches, Consistency Models Speicherhierarchie, Caches, Consistency Models Maximilian Langknecht Lehrstuhl für Rechnerarchitektur Betreuer: Prof. Dr. Ulrich Brüning 1 Inhaltsverzeichnis Speicherhierarchie Warum gibt es Speicherhierarchie?

Mehr

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

Digital Design Entwicklung der DRAMs. Richard Roth / FB Informatik und Mathematik Speicher 1 Entwicklung der DRAMs Richard Roth / FB Informatik und Mathematik Speicher 1 Entwicklung der DRAMs in Zukunft Richard Roth / FB Informatik und Mathematik Speicher 2 DRAM Speicherzelle (Trench Technology)

Mehr

Cache-Kohärenz und -Konsistenz. Betreuer: Prof. Brüning Veton Kajtazi Mat.-Nr.: Universität Heidelberg

Cache-Kohärenz und -Konsistenz. Betreuer: Prof. Brüning Veton Kajtazi Mat.-Nr.: Universität Heidelberg Cache-Kohärenz und -Konsistenz Betreuer: Prof. Brüning Veton Kajtazi Mat.-Nr.: 3220501 Universität Heidelberg Inhaltsverzeichnis Wozu Caches? Unterschied Kohärenz und Konsistenz MESI-Protokoll Fazit 2

Mehr

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

Speicher Typen. TI-Übung 5. Speicher SRAM. Speicher DRAM. SRAM vs. DRAM (EEP)ROM, NV-RAM, Flash,... Speicher, Caches Speicher Typen TI-Übung 5 Speicher, Caches Andreas I. Schmied (andreas.schmied@uni-ulm.de) AspectIX-Team Abteilung Verteilte Systeme Universität Ulm WS2005 SRAM vs. DRAM (EEP)ROM, NV-RAM, Flash,... Charakteristik

Mehr

Überschrift. Speicherverwaltung. Prof. Dr. Margarita Esponda Freie Universität Berlin 2011/2012

Überschrift. Speicherverwaltung. Prof. Dr. Margarita Esponda Freie Universität Berlin 2011/2012 Überschrift Speicherverwaltung Prof. Dr. Margarita Esponda Freie Universität Berlin 2011/2012 1 Hauptziele: Speicherverwaltung Speicher ist die zweite wichtigste Ressource, die das Betriebssystem verwalten

Mehr

Wunschvorstellung der Entwickler vom Speicher

Wunschvorstellung der Entwickler vom Speicher Wunschvorstellung der Entwickler vom Speicher Unendlich groß Unendlich schnell Nicht flüchtig billig Obwohl sich der verfügbare Speicher laufend erhöht, wird immer mehr Speicher benötigt, als verfügbar

Mehr

5.5 Virtueller Speicher

5.5 Virtueller Speicher 5.5 Virtueller Speicher Wenn der reale Speicher sogar für einzelne Prozesse zu klein ist : Virtueller Speicher (virtual memory), ist beliebig groß, nimmt alle Prozesse auf, ist in gleichgroße Teile Seiten

Mehr

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

Speicher- und Cacheverwaltung unter Linux. Ralf Petring & Guido Schaumann Speicher- und Cacheverwaltung unter Linux Ralf Petring & Guido Schaumann Übersicht Virtueller Adressraum Virtuelle Speicheraufteilung Reale Speicheraufteilung Speicherverwaltung Speicherzugriff Auslagerungsstrategien

Mehr

Virtueller Speicher. SS 2012 Grundlagen der Rechnerarchitektur Speicher 44

Virtueller Speicher. SS 2012 Grundlagen der Rechnerarchitektur Speicher 44 Virtueller Speicher SS 2012 Grundlagen der Rechnerarchitektur Speicher 44 Die Idee Virtuelle Adressen Prozess 1 Speicherblock 0 Speicherblock 1 Speicherblock 2 Speicherblock 3 Speicherblock 4 Speicherblock

Mehr

, SS2012 Übungsgruppen: Do., Mi.,

, SS2012 Übungsgruppen: Do., Mi., VU Technische Grundlagen der Informatik Übung 7: Speicher und Peripherie 183.579, SS2012 Übungsgruppen: Do., 31.05. Mi., 06.06.2012 Aufgabe 1: Ihre Kreativität ist gefragt! Um die Qualität der Lehrveranstaltung

Mehr

Vorlesung 14 Speichersysteme (2)

Vorlesung 14 Speichersysteme (2) D - CA - XIV - MH - 1 HUMBOLDT-UNIVERSITÄT ZU BERLIN INSTITUT FÜR INFORMATIK Vorlesung 14 Speichersysteme (2) Sommersemester 2003 Leitung: Prof. Dr. Miroslaw Malek D - CA - XIV - MH - 2 SPEICHERSYSTEME

Mehr

Quantitative Prinzipien im Hardwareentwurf. 1. Small is fast

Quantitative Prinzipien im Hardwareentwurf. 1. Small is fast Quantitative Prinzipien im Hardwareentwurf 1. Small is fast Kleine Hardwareeinheiten schalten in der Regel schneller als größere. Kleine Transistoren bilden an ihren Gates kleinere Kapazitäten die Source-Drain

Mehr

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

Naiver Ansatz. Blöcke und Seiten. Betriebssysteme I Sommersemester 2009 Kapitel 6: Speicherverwaltung und Dateisysteme Betriebssysteme I Sommersemester 2009 Kapitel 6: Speicherverwaltung und Dateisysteme Hans-Georg Eßer Hochschule München Teil 3: Zusammenhängende Speicherzuordnung 06/2009 Hans-Georg Eßer Hochschule München

Mehr

Speicherarchitektur (16)

Speicherarchitektur (16) Zuweisungsstrategien für Cacheblocks: direct-mapped Speicherarchitektur (16) voll-assoziativ mengen-assoziativ Beispiel: Vorlesung Rechnersysteme SS `09 E. Nett 15 Speicherarchitektur (16) Konfigurationsmöglichkeiten

Mehr

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

CPU. Memory. Highest. Fastest. Smallest. Memory. Biggest. Lowest Speed CPU Size Cost ($/bit) Fastest Memory Smallest Highest Memory Slowest Memory Biggest Lowest Processor Data are transferred CPU Levels in the memory hierarchy Level Level 2 Increasing distance from

Mehr

G. Caches. G.1.1 Kontext & Orientierung

G. Caches. G.1.1 Kontext & Orientierung G.1.1 Kontext & Orientierung G. Caches Caches sind kleine, aber schnelle Zwischen- bzw. Pufferspeicher. Assoziative Adressierung anstelle von direkter Adressierung. Für Code, Daten & virtuelle Adressen.

Mehr

Verbesserung der Leistungsfähigkeit von Caches

Verbesserung der Leistungsfähigkeit von Caches 12 Verbesserung der Leistungsfähigkeit von Caches Peter Marwedel Informatik 12 TU Dortmund 2013/05/20 Verbesserung der Leistungsfähigkeit von Caches ($,, ): Übersicht Beeinflussende Größen (Kapitel 5.2,

Mehr

Ein- und Ausgabegeräte

Ein- und Ausgabegeräte Blockorientiert Jeder Block kann unabhängig gelesen und geschrieben werden. Festplatten, CD-ROMs, USB-Sticks, etc. Zeichenorientiert Keine Struktur, nicht adressierbar, Daten werden als Folge von Zeichen

Mehr