Abbilden von virtuellen auf physikalische Adressen

Größe: px
Ab Seite anzeigen:

Download "Abbilden von virtuellen auf physikalische Adressen"

Transkript

1 Abbilden von virtuellen auf physikalische Adressen Virtuelle Adresse Virtuelle Seitennummer Seiten Offset Translation Physikalische Adresse Physikalische Seitennummer Seiten Offset Quiz: Größe x des virtuellen Adressraumes, Größe y des physikalischen Adressraumes und Größe z der Speicherblöcke? SS 2012 Grundlagen der Rechnerarchitektur Speicher 46

2 Weitere Details zur Address Translation Bildquelle: David A. Patterson und John L. Hennessy, Computer Organization and Design, Fourth Edition, 2012 SS 2012 Grundlagen der Rechnerarchitektur Speicher 47

3 Page Faults Page Fault: die Page muss in eine freie Page im Speicher geladen werden. Was, wenn keine Page mehr frei ist? Andere Page im Speicher muss ausgelagert werden. Mögliche Ersetzungsstrategie: LRU (siehe voriges Thema Caching). Woher weiß man eigentlich, welche Page schon lange nicht mehr adressiert wurde? Manche Prozessoren können die Page Table mit einem Reference/Use Bit taggen. Den Rest muss das Betriebssystem übernehmen (mehr dazu in der Vorlesung Betriebssysteme) SS 2012 Grundlagen der Rechnerarchitektur Speicher 48

4 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 wir mindestens 18 Bits). Damit benötigen wir insgesamt: Anzahl Page Table Einträge: Größe der Page Table: Wir benötigen so eine Page Table pro Prozess! Noch gravierender ist es natürlich für 64 Bit Adressen! Größe der Page Table: SS 2012 Grundlagen der Rechnerarchitektur Speicher 49

5 Techniken zur Reduktion der Page Table Größe Page Table Größe ist limitiert durch ein spezielles Limit Register: Adressen erst mal nur bis maximal dem Inhalt des Limit Registers erlaubt. Limit Register wird nur bei Bedarf (also überschreiten) erhöht. Sinnvoll, wenn Speicher nur in eine Richtung wächst. Page Table ist in zwei Segmenten organisiert: Beide Segmente wachsen wie vorhin beschrieben mittels eines Limit Registers nur bei Bedarf. Ein Segment wird für den Stack verwendet und wächst von oben nach unten. Das andere Segment wird für den Heap verwendet und wächst von unten nach oben. Höchstes Adress Bit bestimmt welches der beiden Segmente verwendet wird. (Also: Speicher in zwei gleich große Teile unterteilt) SS 2012 Grundlagen der Rechnerarchitektur Speicher 50

6 Techniken zur Reduktion der Page Table Größe Invertierte Page Tables: Es wird eine Hash Funktion auf die virtuelle Adresse angewendet. Die Größe der Page Table entspricht der Anzahl Seiten im physikalischen Speicher. Jeder Eintrag speichert die aktuellen High Order Bits der Adressen zu den die aktuelle Page gehört. Mehrere Level von Page Tables: Oberster Level zeigt zunächst auf sehr große Blöcke (auch als Segmente bezeichnet). Innerhalb eines Segments wird wiederum mittels Page Table feiner (dann als Pages bezeichnet) unterteilt. Referenzieren einer Page: High Order Bits bestimmen das Segment (wenn vorhanden); die nächsten Bits dann die richtige Page in diesem Segment. Nachteil dieses Verfahrens: Adress Translation ist aufwendiger. SS 2012 Grundlagen der Rechnerarchitektur Speicher 51

7 Techniken zur Reduktion der Page Table Größe Paged Page Tables: Page Table befindet sich selber im virtuellen Speicher. Mögliche rekursive Page Faults müssen durch geeignete Betriebssystem Mechanismen verhindert werden. (Keine weiteren Details hier) SS 2012 Grundlagen der Rechnerarchitektur Speicher 52

8 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 Strategie ist Write Back, d.h. nur, wenn die Seite von einer anderen in den Swap Space verdrängt wird, wird diese auch in den Swap Space geschrieben. Auch das ist immer noch gleich so teuer, kommt aber seltener vor. Muss man eine verdrängte Seite eigentlich immer zurückschreiben? Nur, wenn diese verändert wurde. CPU muss bei jedem schreibenden Zugriff auf eine Page in der Page Table ein Dirty Bit setzen. SS 2012 Grundlagen der Rechnerarchitektur Speicher 53

9 Beobachtung für jeden Speicherzugriff Virtueller Speicher ist aufwendiger als direkter physikalischer Zugriff Erst nachschlagen der Page im Speicher. Dann Zugriff auf den Speicher. Wie kann man das soweit wie möglich beschleunigen? Bildquelle: David A. Patterson und John L. Hennessy, Computer Organization and Design, Fourth Edition, 2012 SS 2012 Grundlagen der Rechnerarchitektur Speicher 54

10 Der Translation Lookaside Buffer (TLB) Bildquelle: David A. Patterson und John L. Hennessy, Computer Organization and Design, Fourth Edition, 2012 SS 2012 Grundlagen der Rechnerarchitektur Speicher 55

11 Protection mittels virtuellem Speicher Virtueller Speicher erlaubt, dass mehrere Prozesse auf denselben physikalischen Speicher zugreifen. Es ist unter Umständen sinnvoll, den Speicherbereich vor Schreibzugriff zu schützen. TLB und Page Table speichern ein extra RW Bit. (1) Wer setzt dieses RW Bit? (2) Wie setzt man dieses Bit? Zu (1): Ein Betriebssystem Prozess. Zu (2): Einfache Maschineninstruktionen? Problem: Jeder kann dann das Bit setzen. Prozess 1 Page Prozess 2 SS 2012 Grundlagen der Rechnerarchitektur Speicher 56

12 Betriebsmodi einer CPU Häufig zwei unterschiedliche Betriebsmodi: Normaler Betriebsmodus Kernel (oder auch Supervisor) Mode CPU erlaubt die Ausführung bestimmter Maschinen Instruktionen nur im Kernel Mode. Page Tables werden im physikalischen Speicher abgelegt, auf den kein anderer virtueller Adressraum zeigt. Wie erreicht man den Kernel Mode? Es muss verhindert werden, dass jeder die CPU in diesen Modus versetzen kann. Üblicher Weg: System Call. Erinnerung: damit kann man eine Betriebssystemfunktion aufrufen. Mit System Call wird eine Exception ausgelöst und an eine Speicherstelle gesprungen, die nur in Kernel Mode zugreifbar ist. SS 2012 Grundlagen der Rechnerarchitektur Speicher 57

13 Was passiert bei einem Page Fault noch? Aktueller Prozess kann die Instruktion, die den Page Fault ausgelöst hat, nicht weiter ausführen. Betriebssystem kann einem anderen Prozess die CPU zur Verfügung stellen. Sobald die Page geladen ist, kann dem ursprünglichen Prozess die CPU wieder zur Verfügung gestellt werden. Hierzu muss der ursprüngliche Prozesskontext wieder hergestellt werden; unter anderem natürlich der PC auf die Instruktion gesetzt werden, die den Page Fault verursacht hatte. SS 2012 Grundlagen der Rechnerarchitektur Speicher 58

14 Segmentierung Motivation Bisher haben wir feste Blockgrößen betrachtet. Ziel: Paging stellt dem Anwender einen großen (eindimensionalen) Speicher von 0 bis 2 b 1 (b = Bit Tiefe) bereit. Annahme Programm benötigt mehrere Speicherbereiche deren Längen im Programmablauf variabel sind. Beispiel Compiler: Symboltabelle Source Code Konstanten Parse Tree Call Stack 0 A B C D E 2 b 1 Für solche Anwendungsfälle ist es besser dem Anwender sichtbar mehrere unabhängige Speicherbereiche zur Verfügung zu stellen. SS 2012 Grundlagen der Rechnerarchitektur Speicher 59

15 Voriges Beispiel Compiler: 24K Segmentierung Grundidee 20K 20K 16K 12K 8K 4K 0K Symbol Tabelle 16K 12K 8K 4K 0K Source Code Konstanten Parse Tree Dieses Konzept mit variablen Blockgrößen nenn man Segmentierung. 4K 0K Im Gegensatz zu Paging: explizit sichtbare zweidimensionale Adressierung (n,k) mit Segment Nummer n und Segment Offset k Anfang kann auf einen beliebigen Startpunkt im Speicher zeigen. Die physikalische Adresse ergibt sich aus Anfang + Offset. Segmente können beliebig lang sein; benötigt auch Bounds Check. Call Stack Segmentierung ermöglicht auch einfaches Sharing von Code (und natürlich auch Daten) zwischen Prozessen. Alle können die gleiche Adresse (n,k) verwenden. Protection kann explizit erfolgen. [Paging: virtueller Adressbereich muss verfügbar sein; Protection implizit] SS 2012 Grundlagen der Rechnerarchitektur Speicher 60 16K 12K 8K 4K 0K 12K 8K 4K 0K

16 Implementierung über Segment Tabelle Adressierung im virtuellen Addressraum Segment Nummer (Selector) Offset Eintrag in Segmenttabelle Segmenttabelle Basis Adresse Limit Andere Felder (z.b. Priviledge, Protection, ) + N Bit lineare Adresse Damit geeigneter Zugriff auf physikalischen Speicher SS 2012 Grundlagen der Rechnerarchitektur Speicher 61

17 Segmentierung versus Paging Paging Für den Programmierer sichtbar Nein Ja Anzahl verfügbarer linearer 1 Viele Adressbereiche Mehr als der physikalische Ja Ja Speicherbereich verfügbar Trennung von Programm und Daten mit Nein Ja unterschiedlichem Protection möglich Unterstützung mehrerer Nein Ja Speicherbereiche mit dynamischer Größe Unterstützung von Code Sharing Nein Ja Motivation für die Einführung/Verwendung Bereitstellung eines großen Adressraumes bei limitiertem physikalischem Speicher Segmentierung Trennung von Programm und Daten in logische unabhängige Adressbereiche. Unterstützung von Sharing und Protection SS 2012 Grundlagen der Rechnerarchitektur Speicher 62

18 Problem mit purer Segmentierung Pure Segmentierung: Jedes Segment belegt ab einer Basisadresse einen aufeinanderfolgenden physikalischen Speicherbereich. (z.b. Ausgangspunkt (a)) Mit der Zeit entsteht eine sog. externe Fragmentierung (z.b. (b), (c), (d)) Mögliche Lösung: Compactation (z.b. (e)) Segment 4 (7K) Segment 3 (8K) Segment 2 (5K) Segment 1 (8K) Segment 0 (4K) Segment 4 (7K) Segment 3 (8K) Segment 2 (5K) (3K) Segment 7 (5K) Segment 0 (4K) (3K) Segment 5 (4K) Segment 3 (8K) Segment 2 (5K) (3K) Segment 7 (5K) Segment 0 (4K) (3K) Segment 5 (4K) Segment 6 (4K) Segment 2 (5K) Segment 7 (5K) Segment 0 (4K) SS 2012 Grundlagen der Rechnerarchitektur Speicher 63 (4K) (3K) (10K) Segment 5 (4K) Segment 6 (4K) Segment 2 (5K) Segment 7 (5K) Segment 0 (4K) (a) (b) (c) (d) (e)

19 Lösung: Segmentierung mit Paging (1) Beispiel Intel Pentium: Es gibt zwei Segment Tabellen (mit 8K+8K Einträgen) GDT (Global Descriptor Table) eine globale Tabelle für alle Prozesse LDT (Local Descriptor Table) für jeden Prozess eine individuelle Tabelle Es gibt 6 sog. Segment Register (u.a. CS als Selector für Code und DS als Selector für Daten) Selector Format 16 Bit Index 0=GDT 1=LDT Privilege Level (0 3) Mittels Index: Zugriff auf Segment Descriptor in LDT oder GDT (Privilege Level gleich) SS 2012 Grundlagen der Rechnerarchitektur Speicher 64

20 Lösung: Segmentierung mit Paging (2) Beispiel Intel Pentium: Aufbau eines Segment Descriptors (8 Bytes) Base: 32 Bit Basis Adresse des Segments (Format bzgl. Base und Limit ist Downward Kompatibilität mit 24 Bit Base des 286 geschuldet) (Privilege Level, Segement Type und Protection siehe gleich) Limit: mittels Granularity Bit entweder in Bytes (max. Segmentgröße 2 20 =1MB) oder in 4K Pages (max. Segmentgröße 4K*2 20 =4GB) Damit zunächst also: Zugriff auf physikalischen Speicher mittels Basis Adresse plus Offset (Segemente dürfen sogar überlappen) Wo ist denn Paging als Lösung angewendet??? Bildquelle: Andrew S. Tanenbaum, Modern Operating Systems, Second Edition, 2001 SS 2012 Grundlagen der Rechnerarchitektur Speicher 65

21 Lösung: Segmentierung mit Paging (3) Beispiel Intel Pentium: Bit in globalem Control Register kann man Paging dazuschalten Lineare Adresse wird dann nicht direkt als physikalische Adresse verwendet Stattdessen wird die Adresse als virtuelle Adresse des Pagings verwendet Virtuelle 32 Bit Adresse: es wird zweistufiges Paging verwendet Dir Page Offset Lineare Adresse Bemerkung: Pentium verwendet selbstverständlich TLB zwecks Performancesteigerung Bemerkung: Pentium erlaubt auch nur Paging ohne Segmentierung (setze alle Segmentregister auf denselben Segment Selector, Descriptor Base=0 und Limit=max) Bildquelle: Andrew S. Tanenbaum, Modern Operating Systems, Second Edition, 2001 SS 2012 Grundlagen der Rechnerarchitektur Speicher 66

22 Zum Abschluss: Protection Beispiel Intel Pentium: Vier Protection Level (0 bis 3; Level 0 hat höchste Privilegien) Zu jedem Zeitpunkt befindet sich ein Programm in einem der Level Jedes Segment ist ebenfalls einem Level zugeordnet. Unmittelbarer Zugriff auf Segment nur aus gleichem Level oder aus Level mit höheren Privilegien möglich; ansonsten Trap/Exception! Aufruf von Prozeduren ist aber auf kontrollierte Weise über call Instruktion möglich call verwendet anstatt Adresse einen Segment Selector Dieser beschreibt einen sogenannten call Gate (welcher die Aufrufadresse festlegt) Damit Sprung an beliebige Stelle nicht möglich; nur offizielle Eintrittspunkte können verwendet werden Typisches Beispiel (siehe Grafik) Type Feld wird zur Unterscheidung zwischen Code Segment, Daten Segment und verschiedene Typen von Gates verwendet Bildquelle: Andrew S. Tanenbaum, Modern Operating Systems, Second Edition, 2001 SS 2012 Grundlagen der Rechnerarchitektur Speicher 67

23 Parallelität und Caches SS 2012 Grundlagen der Rechnerarchitektur Speicher 68

24 Cache Kohärenz Problem CPU 1 (oder Core 1) CPU 2 (oder Core 2) Cache Cache Speicher Zeitschritt Event Cache Inhalt für CPU A Cache Inhalt für CPU B Speicherinhalt für Adresse X CPU 1 liest X CPU 2 liest X CPU 1 speichert 1 nach X SS 2012 Grundlagen der Rechnerarchitektur Speicher 69

25 Wann gilt ein Cache als kohärent? 1. Lesen von Speicherstelle X nach schreiben in Speicherstelle X sollte den geschriebenen Wert zurück geben, wenn kein weiterer Prozess auf die Stelle X geschrieben hat. 2. Nachdem ein Prozess in Speicherstelle X geschrieben hat, sollte nach einer gewissen Zeit jeder Prozess den geschriebenen Wert in X vorfinden. 3. Zwei Schreiboperationen von zwei Prozessen in die Speicherstelle X sollte von jedem Prozess in der gleichen Reihenfolge gesehen werden. (Schreiben ist serialisiert) SS 2012 Grundlagen der Rechnerarchitektur Speicher 70

26 Wie erreicht man Kohärenz? Write Invalidate Protokoll: Wenn ein Prozess in einen Speicherstelle schreibt wird die Speicherstelle in den Caches aller anderen Prozesse invalidiert. Busaktivität Inhalt des Caches von CPU A Inhalt des Caches von CPU B CPU A liest X Cache Miss für X 0 0 CPU B liest X Cache Miss für X CPU A schreibt 1 nach X Cache Invalidierung für X 1 1 CPU B liest X Cache Miss für X Prozessoraktivität Speicherinhalt für X Wie wird das Invalidieren technisch erreicht? Snooping: Jeder Cache Controller überwacht den gemeinsamen Bus, ob auf einen eigenen gecachten Inhalt geschrieben wird. 0 SS 2012 Grundlagen der Rechnerarchitektur Speicher 71

27 Ergänzung: RAM und ROM SS 2012 Grundlagen der Rechnerarchitektur Speicher 72

28 Speichern eines Bits versus viele MB Wir wissen wie wir einzelne Bits speichern können (Erinnerung: Latches, Flip Flops) Mehrere solcher Bausteine können zu Register zusammengebaut werden D Q CK Wie baut man daraus aber komplexe RAM Bausteine? Bildquelle: Andrew S. Tanenbaum, Structured Computer Organization, Fifth Edition, 2006 SS 2012 Grundlagen der Rechnerarchitektur Speicher 73

29 Beispiel: Speicherbaustein mit Adressierung Dateneingänge (3 Bit): I 0, I 1, I 2 Datenausgänge (3 Bit): O 1, O 2, O 3 Adressleitungen (4 Wörter ): A 0, A 1 Kontrollleitungen: CS = Chip Select RD = Read (=1) / Write (=0) OE = Output Enable Lesen und Schreiben am Beispiel Wenn man entweder liest oder schreibt können I 0, I 1, I 2 und O 1, O 2, O 3 auch dieselben Leitungen sein (das spart Pins und Busleitungen). Dies erfordert aber, dass beim Schreiben die Ausgabe getrennt wird. Baustein hierfür: noninverting und inverting Buffer: (sog. Tri State Device: Ausgabe 0/1 oder none (d.h. open circuit)) Bildquelle: Andrew S. Tanenbaum, Structured Computer Organization, Fifth Edition, 2006 SS 2012 Grundlagen der Rechnerarchitektur Speicher 74

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

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

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

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

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

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

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

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

Ergänzung: RAM und ROM. SS 2012 Grundlagen der Rechnerarchitektur Speicher 72

Ergänzung: RAM und ROM. SS 2012 Grundlagen der Rechnerarchitektur Speicher 72 Ergänzung: RAM und ROM SS 2012 Grundlagen der Rechnerarchitektur Speicher 72 Speichern eines Bits versus viele MB Wir wissen wie wir einzelne Bits speichern können (Erinnerung: Latches, Flip Flops) Mehrere

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

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

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

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

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

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

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

Grundlagen der Rechnerarchitektur. MIPS Assembler

Grundlagen der Rechnerarchitektur. MIPS Assembler Grundlagen der Rechnerarchitektur MIPS Assembler Übersicht Arithmetik, Register und Speicherzugriff Darstellung von Instruktionen Logische Operationen Weitere Arithmetik Branches und Jumps Prozeduren 32

Mehr

Erweiterung von Adressraum und Bit Tiefe

Erweiterung von Adressraum und Bit Tiefe Erweiterung von Adressraum und Bit Tiefe Erweiterung des vorigen Beispiels ist offensichtlich: Vergrößerung des Adressraums (in der Größenordnung 2 n ): Füge eine Adressleitung hinzu und verdoppele die

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

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

Arithmetik, Register und Speicherzugriff. Grundlagen der Rechnerarchitektur Assembler 9

Arithmetik, Register und Speicherzugriff. Grundlagen der Rechnerarchitektur Assembler 9 Arithmetik, Register und Speicherzugriff Grundlagen der Rechnerarchitektur Assembler 9 Arithmetik und Zuweisungen Einfache Arithmetik mit Zuweisung C Programm: a = b + c; d = a e; MIPS Instruktionen: Komplexere

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

Grundlagen der Rechnerarchitektur. Ein und Ausgabe

Grundlagen der Rechnerarchitektur. Ein und Ausgabe Grundlagen der Rechnerarchitektur Ein und Ausgabe Übersicht Grundbegriffe Hard Disks und Flash RAM Zugriff auf IO Geräte RAID Systeme SS 2012 Grundlagen der Rechnerarchitektur Ein und Ausgabe 2 Grundbegriffe

Mehr

Datenpfad einer einfachen MIPS CPU

Datenpfad einer einfachen MIPS CPU Datenpfad einer einfachen MIPS CPU Die Branch Instruktion beq Grundlagen der Rechnerarchitektur Prozessor 13 Betrachten nun Branch Instruktion beq Erinnerung, Branch Instruktionen beq ist vom I Typ Format:

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

Datenpfad einer einfachen MIPS CPU

Datenpfad einer einfachen MIPS CPU Datenpfad einer einfachen MIPS CPU Die Branch Instruktion beq Grundlagen der Rechnerarchitektur Prozessor 13 Betrachten nun Branch Instruktion beq Erinnerung, Branch Instruktionen beq ist vom I Typ Format:

Mehr

7. Speicherverwaltung

7. Speicherverwaltung 7. Speicherverwaltung Ziele Zuteilung des Arbeitsspeicher Abbildung der symbolischen Adresse auf die physikalische Adresse Adress-Transformation Symbolische Adresse verschiebbare Adresse physikalische

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

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

, 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

Ü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

Assembler am Beispiel der MIPS Architektur

Assembler am Beispiel der MIPS Architektur Assembler am Beispiel der MIPS Architektur Frühere Einsatzgebiete MIPS Silicon Graphics Unix Workstations (z. B. SGI Indigo2) Silicon Graphics Unix Server (z. B. SGI Origin2000) DEC Workstations (z.b.

Mehr

Grundlagen der Rechnerarchitektur

Grundlagen der Rechnerarchitektur Grundlagen der Rechnerarchitektur Prozessor Übersicht Datenpfad Control Pipelining Data Hazards Control Hazards Multiple Issue Grundlagen der Rechnerarchitektur Prozessor 2 Datenpfad einer einfachen MIPS

Mehr

Datenpfad einer einfachen MIPS CPU

Datenpfad einer einfachen MIPS CPU Datenpfad einer einfachen MIPS CPU Zugriff auf den Datenspeicher Grundlagen der Rechnerarchitektur Prozessor 19 Betrachten nun Load und Store Word Erinnerung, Instruktionen lw und sw sind vom I Typ Format:

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

(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

Datenpfad einer einfachen MIPS CPU

Datenpfad einer einfachen MIPS CPU Datenpfad einer einfachen MIPS CPU Zugriff auf den Datenspeicher Grundlagen der Rechnerarchitektur Prozessor 19 Betrachten nun Load und Store Word Erinnerung, Instruktionen lw und sw sind vom I Typ Format:

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

Speicherarchitektur (23) Suchen einer Seite:

Speicherarchitektur (23) Suchen einer Seite: Speicherarchitektur (23) Suchen einer Seite: Vorlesung Rechnersysteme SS `09 E. Nett 7 Speicherarchitektur (24) Adressschema inklusive Seitenfehler: Vorlesung Rechnersysteme SS `09 E. Nett 8 Speicherarchitektur

Mehr

Invalidierungs- und Update-basierte Cache-Kohärenz-Protokolle

Invalidierungs- und Update-basierte Cache-Kohärenz-Protokolle Invalidierungs- und Update-basierte Cache-Kohärenz-Protokolle Architecture of Parallel Computer Systems WS15/16 J.Simon 1 SC mit Write-Back Caches Beweisidee: Behandlung von Reads wie beim Write-Through

Mehr

Rechnerorganisation. Überblick über den Teil 13

Rechnerorganisation. Überblick über den Teil 13 Rechnerorganisation Teil 3 9. Juni 2 KC Posch Überblick über den Teil 3 Arbiter: Wie können sich 2 aktive Partner vertragen? Direkter Speicherzugriff: Ein Ko Prozessor zum Daten Schaufeln Die Verbesserung

Mehr

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

Betriebssysteme Sommersemester Betriebssysteme. 5. Kapitel. Adressumsetzung. Dr. Peter Tröger / Prof. M. Werner. Professur Betriebssysteme Betriebssysteme Sommersemester 2017 Betriebssysteme 5. Kapitel Adressumsetzung Dr. Peter Tröger / Prof. M. Werner Professur Betriebssysteme 5.1 Speicher schneller, teurer, kleiner Betriebssysteme Adressumsetzung

Mehr

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

Übungen zu Grundlagen der Rechnerarchitektur und -organisation: Bonusaufgaben Übung 8 und Präsenzaufgaben Übung 9

Übungen zu Grundlagen der Rechnerarchitektur und -organisation: Bonusaufgaben Übung 8 und Präsenzaufgaben Übung 9 Übungen zu Grundlagen der Rechnerarchitektur und -organisation: Bonusaufgaben Übung 8 und Präsenzaufgaben Übung 9 Dominik Schoenwetter Erlangen, 30. Juni 2014 Lehrstuhl für Informatik 3 (Rechnerarchitektur)

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

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

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

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

Rechnerstrukturen. 5. Speicher. Inhalt. Vorlesung Rechnerstrukturen Wintersemester 2002/03. (c) Peter Sturm, Universität Trier 1.

Rechnerstrukturen. 5. Speicher. Inhalt. Vorlesung Rechnerstrukturen Wintersemester 2002/03. (c) Peter Sturm, Universität Trier 1. Rechnerstrukturen 5. Speicher 5.1 Motivation Speichertypen RAM / ROM Dynamisches RAM Inhalt Cache-Speicher Voll Assoziativ n-wege Assoziativ Direct Mapping 5.2 (c) Peter Sturm, Universität Trier 1 Der

Mehr

Freispeicherverwaltung Martin Wahl,

Freispeicherverwaltung Martin Wahl, Freispeicherverwaltung Martin Wahl, 17.11.03 Allgemeines zur Speicherverwaltung Der physikalische Speicher wird in zwei Teile unterteilt: -Teil für den Kernel -Dynamischer Speicher Die Verwaltung des dynamischen

Mehr

Grundlagen der Rechnerarchitektur

Grundlagen der Rechnerarchitektur Grundlagen der Rechnerarchitektur Ein und Ausgabe Übersicht Grundbegriffe Hard Disks und Flash RAM Zugriff auf IO Geräte RAID Systeme SS 2012 Grundlagen der Rechnerarchitektur Ein und Ausgabe 2 Grundbegriffe

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

Prof. Dr. Sharam Gharaei. Inhaltsverzeichnis. 1 Einleitung 1. 2 Grundlage der Realisierung 2. 3 Die Realisierung 3. Literaturverzeichnis 7

Prof. Dr. Sharam Gharaei. Inhaltsverzeichnis. 1 Einleitung 1. 2 Grundlage der Realisierung 2. 3 Die Realisierung 3. Literaturverzeichnis 7 Prof. Dr. Sharam Gharaei Version 1.2.0, 07.04.2017 Inhaltsverzeichnis 1 Einleitung 1 1.1 Code-bezogene Aspekte 2 1.2 Speicherungsbezogene Aspekte 2 2 Grundlage der Realisierung 2 3 Die Realisierung 3 3.1

Mehr

DOSEMU. Vortrag im Hauptseminar Konzepte und Techniken virtueller Maschinen und Emulatoren. Matthias Felix FAU. 13.

DOSEMU. Vortrag im Hauptseminar Konzepte und Techniken virtueller Maschinen und Emulatoren. Matthias Felix FAU. 13. DOSEMU Vortrag im Hauptseminar Konzepte und Techniken virtueller Maschinen und Emulatoren Matthias Felix filo@icip.de FAU 13. Juni 2007 Matthias Felix (FAU) DOSEMU 13. Juni 2007 1 / 22 Inhalt 1 Einführung

Mehr

Mikroprozessortechnik Grundlagen 1

Mikroprozessortechnik Grundlagen 1 Grundlagen - Grundbegriffe, Aufbau, Rechnerarchitekturen, Bus, Speicher - Maschinencode, Zahlendarstellung, Datentypen - ATMELmega28 Progammierung in C - Vergleich C und C++ - Anatomie eines µc-programmes

Mehr

Echtzeit-Multitasking

Echtzeit-Multitasking Technische Informatik Klaus-Dieter Thies Echtzeit-Multitasking Memory Management und System Design im Protected Mode der x86/pentium-architektur. Shaker Verlag Aachen 2002 Die Deutsche Bibliothek - CIP-Einheitsaufnahme

Mehr

Echtzeit-Multitasking

Echtzeit-Multitasking Technische Informatik Klaus-Dieter Thies Echtzeit-Multitasking Memory Management und System Design im Protected Mode der x86/pentium-architektur. Shaker Verlag Aachen 2002 Die Deutsche Bibliothek - CIP-Einheitsaufnahme

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

Einfaches MSI-Writeback-Inval-Protokoll

Einfaches MSI-Writeback-Inval-Protokoll Einfaches MSI-Writeback-Inval-Protokoll Write-Back Cache typischerweise Write-allocate bei einem Write-Miss Zustände Invalid (I): Shared (S): Kopien in einem oder mehreren Caches Dirty or Modified (M):

Mehr

Carry Lookahead Adder

Carry Lookahead Adder Carry Lookahead Adder Mittels der Generate und Propagate Ausdrücke lässt ich dann für jede Stelle i der Carry (Übertrag) für die Stelle i+1 definieren: Für einen 4 Stelligen Addierer ergibt sich damit:

Mehr

3 Schnittstelle zum Betriebssystem 3.1 Einleitung

3 Schnittstelle zum Betriebssystem 3.1 Einleitung 3.1 Einleitung 1 Anbindung zum Betriebssystem (BS) Aufgaben BS Schnittstelle zur Hardware Sicherstellung des Betriebs mit Peripherie Dienste erfüllen für Benutzung Rechner Dateiverwaltung (Kopieren, Verwalten,.)

Mehr

Intel x86 Bootstrapping

Intel x86 Bootstrapping Intel x86 Bootstrapping Meine CPU, mein Code! Andreas Galauner SigInt 2010 Democode Es gibt Democode: http://github.com/g33katwork/ SigInt10OSWorkshop git clone git://github.com/g33katwork/ SigInt10OSWorkshop.git

Mehr

5.6 Segmentierter virtueller Speicher

5.6 Segmentierter virtueller Speicher 5.6 Segmentierter virtueller Speicher Zur Erinnerung: Virtueller Speicher ermöglicht effiziente und komfortable Nutzung des realen Speichers; Sharing ist problematisch. Segmentierung erleichtert Sharing,

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

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

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

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 II. Dr.-Ing. Volkmar Sieh. Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2011

Cache II. Dr.-Ing. Volkmar Sieh. Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2011 Cache II Dr.-Ing. Volkmar Sieh Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2011 Cache II 1/14 2012-02-29 Schreibstrategien Es sind verschiedene Fälle

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

Rechnerstrukturen Winter SPEICHER UND CACHE. (c) Peter Sturm, University of Trier 1

Rechnerstrukturen Winter SPEICHER UND CACHE. (c) Peter Sturm, University of Trier 1 9. SPEICHER UND CACHE (c) Peter Sturm, University of Trier 1 Inhalt Grundlagen Speichertypen RAM / ROM Dynamisches RAM Cache- Speicher Voll AssoziaNv n- Wege AssoziaNv Direct Mapping Beispiel: 8 Bit- Register

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

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

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

Grundlagen der Rechnerarchitektur. Einführung

Grundlagen der Rechnerarchitektur. Einführung Grundlagen der Rechnerarchitektur Einführung Unsere erste Amtshandlung: Wir schrauben einen Rechner auf Grundlagen der Rechnerarchitektur Einführung 2 Vorlesungsinhalte Binäre Arithmetik MIPS Assembler

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

Speichern von Zuständen

Speichern von Zuständen Speichern von Zuständen Erweiterung eines R S Latch zu einem D Latch (D=Data, C=Clock) R S altes Q neues Q 0 0 0 0 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 0 1 0 1 0 R S C D altes Q neues Q 0 0 0 0 0 1 0 1 0 0 1

Mehr

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

1. Speicher. Typische Nutzung eines Adreßraums. Systemsoftware. Textbereich relativ klein. Sehr großer Abstand zwischen Heap und Stack 1. Speicher 1 Typische Nutzung eines Adreßraums Textbereich relativ klein Sehr großer Abstand zwischen Heap und Stack Keine Verunreinigungen durch: E/A-Bereiche nicht bestückte Adreßbereiche fremde Kontrollflüsse

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

32 Bit Konstanten und Adressierung. Grundlagen der Rechnerarchitektur Assembler 78

32 Bit Konstanten und Adressierung. Grundlagen der Rechnerarchitektur Assembler 78 32 Bit Konstanten und Adressierung Grundlagen der Rechnerarchitektur Assembler 78 Immediate kann nur 16 Bit lang sein Erinnerung: Laden einer Konstante in ein Register addi $t0, $zero, 200 Als Maschinen

Mehr

Konzepte von Betriebssystem- Komponenten Olessia Usik 20. Juni 2005

Konzepte von Betriebssystem- Komponenten Olessia Usik 20. Juni 2005 Konzepte von Betriebssystem- Komponenten Olessia Usik olessia@freenet.de 20. Juni 2005 1 GROß 2 SCHNELL UNENDLICH Gliederung 1. Einleitung 2. Swapping 3. Virtuelle Speicherverwaltung 3.1 Segmentorientierter

Mehr

Rechnerarchitektur SS 2012

Rechnerarchitektur SS 2012 Rechnerarchitektur SS 2012 Cachekohärenz TU Dortmund, Fakultät für Informatik XII Literatur: Hennessy/Patterson: Computer Architecture, 3. Auflage, 2003, Abschnitte 6.2, S. 549ff und 6.5, S. 576ff. Huang:

Mehr

5. Aufgabenblatt Speicherverwaltung

5. Aufgabenblatt Speicherverwaltung Faculty of Computer Science Institute for System Architecture, Operating Systems Group Betriebssysteme und Sicherheit, WS 0/. Aufgabenblatt Speicherverwaltung Geplante Bearbeitungszeit: drei Wochen Aufgabe.

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

Memory Management. Peter Puschner Institut für Technische Informatik peter@vmars.tuwien.ac.at

Memory Management. Peter Puschner Institut für Technische Informatik peter@vmars.tuwien.ac.at Memory Management Peter Puschner Institut für Technische Informatik peter@vmars.tuwien.ac.at 1 Speicherverwaltung Effektive Aufteilung und Verwaltung des Arbeitsspeichers für BS und Programme Anforderungen

Mehr

Rechnerarchitektur SS 2012

Rechnerarchitektur SS 2012 Rechnerarchitektur SS 2012 Cachekohärenz Michael Engel TU Dortmund, Fakultät für Informatik Teilweise basierend auf Material von Gernot A. Fink und R. Yahyapour 11. Juni 2013 Speicher in MP-Systemen Zentrales

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

Bootvorgang des DSM-Systems Systems Plurix

Bootvorgang des DSM-Systems Systems Plurix Bootvorgang des DSM-Systems Systems Plurix Stefan Frenz Vortrag im Rahmen der Abteilungsbesprechung Voraussetzungen: CPU CPU-Modi Voraussetzungen: BIOS Rechner-Initialisierung durch das BIOS Interrupt

Mehr

Auch hier wieder. Control. RegDst Branch MemRead MemtoReg ALUOp MemWrite ALUSrc RegWrite. Instruction[31 26] (also: das Opcode Field der Instruktion)

Auch hier wieder. Control. RegDst Branch MemRead MemtoReg ALUOp MemWrite ALUSrc RegWrite. Instruction[31 26] (also: das Opcode Field der Instruktion) Auch hier wieder Aus voriger Wahrheitstabelle lässt sich mechanisch eine kombinatorische Schaltung generieren, die wir im Folgenden mit dem Control Symbol abstrakt darstellen. Instruction[31 26] (also:

Mehr

Liefert das Protokoll Kohärenz?

Liefert das Protokoll Kohärenz? Liefert das Protokoll Kohärenz? Konstruktion einer (totalen) Ordnung der Speicheroperationen unter Beachtung der Programmordnungen Voraussetzung: atomare Bus-Transaktionen und Speicheroperationen alle

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

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

Linker: Adreßräume verknüpfen. Informationen über einen Prozeß. Prozeß-Erzeugung: Verwandtschaft

Linker: Adreßräume verknüpfen. Informationen über einen Prozeß. Prozeß-Erzeugung: Verwandtschaft Prozeß: drei häufigste Zustände Prozeß: anatomische Betrachtung jeder Prozeß verfügt über seinen eigenen Adreßraum Sourcecode enthält Anweisungen und Variablen Compiler überträgt in Assembler bzw. Binärcode

Mehr

HORUS. Seminar "Ausgewählte Themen in Hardwareentwurf und Optik" im HWS Martin Scherer

HORUS. Seminar Ausgewählte Themen in Hardwareentwurf und Optik im HWS Martin Scherer HORUS Seminar "Ausgewählte Themen in Hardwareentwurf und Optik" im HWS 2006 Martin Scherer Horus Inhalt 1 Einführung 2 Cachekohärenz 3 ExtendiScale Architektur 4 Übertragungsbeispiele 5 Performance Erweiterungen

Mehr

Anbindung zum Betriebssystem (BS)

Anbindung zum Betriebssystem (BS) 5.1 Einleitung Anbindung zum Betriebssystem (BS) Aufgaben BS Schnittstelle zur Hardware Sicherstellung des Betriebs mit Peripherie Dienste erfüllen für Benutzung des Rechners durch Verwaltung der Ressourcen

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