8 Cache. 8.1 Motivation. 8.1 Motivation 335
|
|
- Chantal Goldschmidt
- vor 7 Jahren
- Abrufe
Transkript
1 8.1 Motiation Cache 8.1 Motiation Pipelining-Register werden gleichzeitig getaktet. Dadurch wird die Performance eines Pipelining-Systems on der langsamsten Stufe bestimmt. BD- und ES-Phase können schnell abgearbeitet werden, da hier keine aufwendigen Operationen notwendig sind. Die Dauer der AF-Phase hängt om jeweiligen Befehl ab: Manche Befehle können sehr schnell ausgeführt werden (z.b. ODER-Befehle), andere Befehle (z.b. Multiplikation, Diision, Wurzel) dauern wesentlich länger. Die BH- und SP-Phasen dauern sehr lang, da sich der Speicher ausserhalb des Prozessors befindet. Längere Verbindungsleitungen führen zu längeren Signallaufzeiten und höheren parasitären Kapazitäten. Speicherbausteine werden über ein eigenes Protokoll angesprochen, das on einer Hardware-Schaltung implementiert wird. Dadurch entstehen zusätzliche Gatterlaufzeiten. Aus Platz- und Kostengründen (Ausbeute) ist der Arbeitsspeicher in der Regel aus langsamen DRAM-Bausteinen (1 Transistor + 1 Kondensator pro Speicherstelle) aufgebaut und nicht aus schnellen SRAM-Bausteinen (6 Transistoren pro Speicherstelle). Durch die große Menge an Arbeitsspeicher (z.b. 16 Milliarden Byte RAM $ 256 Register zu je 64 Bit) dauert die Adressierung sehr lange: Es müssen iele Gatter durchlaufen werden, höhere parasitäre Kapazitäten etc. Analysen on Speicherzugriffen haben gezeigt, dass während der Ausführung on Programmen häufig auf die selben oder benachbarte Speicherstellen zugegriffen wird. Dabei wird zwischen örtlicher und zeitlicher Lokalität unterschieden.
2 336 8 Cache Örtliche Lokalität bedeutet, dass beim Zugriff auf eine Speicherstelle sehr wahrscheinlich auch auf eine Speicherstelle in der Nähe zugegriffen wird. Das hat u.a. folgende Ursachen: Die natürliche Befehlsabfolge ist sequentiell und aufeinander folgende Befehle liegen hintereinander im Speicher. Aufeinander folgende Befehle bzw. Befehle an Adressen in der Nähe beschäftigen sich in der Regel mit demselben Problem (z.b. selbe Funktion) und erwenden deswegen auch die selben Daten bzw. zusammengehörige (z.b. zur selben Funktion gehörige) Daten. Zusammengehörige Daten werden (wie zusammengehörige Befehle) im Speicher an benachbarten Adressen abgespeichert. Beispiele: Bei Arrays werden die einzelnen Elemente direkt hintereinander im Speicher abgelegt. Bei der Allokation on Daten auf dem Heap (z.b. mit malloc, new,...) wird om Betriebssystem ein Zeiger auf einen zusammenhängenden Speicherbereich zurückgegeben. Lokale Variable werden nach Funktionen gruppiert der Funktions- Aufrufreihenfolge entsprechend auf dem Stack abgelegt. Zeitliche Lokalität bedeutet, dass es bei einem Zugriff auf eine Speicherstelle sehr wahrscheinlich ist, dass innerhalb eines kurzen Zeitraums wieder auf dieselbe Speicherstelle zugegriffen wird. Das hat u.a. folgende Gründe: Variable werden in der Regel mehrfach erwendet, aus Prinzip mindestens zweimal: Auf eine Variable lesend zuzugreifen macht nur Sinn, wenn zuor etwas hineingeschrieben wurde. Ebenso macht es nur Sinn, etwas in eine Variable hineinzuschreiben, wenn das geschriebene Datenwort auch wieder ausgelesen wird. Für Zugriffe auf erschiedene Elemente eines Arrays wird immer dieselbe Basisadresse erwendet. Ein Schleifenzähler wird bei jedem Schleifendurchlauf geändert und für einen Vergleich abgefragt. Befindet sich ein Befehl in einer Schleife, so werden mit jeder Iteration die Adressen derselben Befehle in den Befehlszähler geladen und dieselben Variablen erwendet.
3 8.2 Speicher-Hierarchien 337 Aufgrund der Zeitlichen Lokalität können Speicherzugriffe dadurch beschleunigt werden, dass beim erstmaligen Zugriff auf eine Speicheradresse das adressierte Wort für zukünftige Zugriffe in einem auf dem Prozessor-Die befindlichen schnellen Puffer-Speicher, dem sog. Cache-Speicher, zwischengespeichert wird. Wird erneut auf die selbe Speicheradresse zugegriffen, kann das im Cache-Speicher orhandene Wort erwendet und der langsame Zugriff auf den Arbeitsspeicher ermieden werden. Werden zusätzlich Worte on benachbarten Adressen in den Cache-Speicher geladen, kann neben der Zeitlichen Lokalität auch die Örtliche Lokalität zur Verringerung der Speicherzugriffszeit ausgenutzt werden. Beim sog. Prefetching werden Befehle/Daten im Voraus auf Verdacht om Arbeitsspeicher angefordert, d.h. ohne Vorliegen eines konkreten Lade- oder Speicherbefehls. Wird dann tatsächlich ein Lade- oder Speicherbefehl mit einer entsprechenden Adresse ausgeführt, stehen die Daten bereits im Cache-Speicher, was den Zugriff deutlich beschleunigt. 8.2 Speicher-Hierarchien Um sehr schnell auf gespeicherte Daten zugreifen zu können, müssen diese sehr schnell adressiert werden können. Voraussetzung für eine schnelle Adressierung ist, dass die Daten nur aus einer kleinen Datenmenge ausgewählt werden müssen und nicht aus einer großen Datenmenge (parasitäre Kapazitäten, zusätzliche (mehrstufige) Adressierungs- Logik,...). Aus diesem Grund werden Speichersysteme häufig hierarchisch aufgebaut. Nachfolgende Abbildung zeigt ein Beispiel für eine Speicherhierarchie. 256 Register zu je 64 Bit Prozessor-Register 1 Prozessortakt 0,4 ns 32 kb pro Prozessorkern L1-Cache 1 Prozessortakt 0,4 ns 256 kb pro Prozessorkern L2-Cache 10 Prozessortakte 4 ns 8 MB geteilt on mehreren Prozessorkernen L3-Cache 50 Prozessortakte 20 ns 16 GB geteilt on mehreren Prozessorkernen Arbeitsspeicher 150 Prozessortakte 60 ns 1 TB geteilt on allen Prozessorkernen SSD/HDD 250 bzw Takte 100 ns bzw. 10 ms
4 338 8 Cache Je weiter oben sich ein Speicherlement in der Hierarchie befindet desto schneller und kleiner ist es. Je weiter unten sich ein Speicherelement in der Hierarchie befindet, desto mehr Daten kann es aufnehmen ist aber auch dementsprechend langsamer. 8.3 Begriffsklärungen Das Grundprinzip on Caches beruht darauf, Datenworte aus großen langsamen Speichern in kleinen schnellen Speichern (Caches) zu puffern. Das Puffern findet blockweise statt, d.h. es werden immer nur komplette Speicher-Blöcke im Cache abgelegt. Diese Blöcke werden auch Rahmen (engl. frames) oder Zeilen (engl. cache lines) genannt. Cache-Hit, Hit-Time und Hit-Rate Ist bei einem Speicherzugriff das adressierte Datenwort bereits im Cache orhanden, spricht man on einem Cache-Hit (engl. hit = Treffer). In diesem Fall ist die Zugriffszeit auf das Datenwort kurz. Die Zugriffszeit im Falle eines Cache-Hits nennt man Hit-Time, die mittlere Auftritts-Wahrscheinlichkeit für einen Cache-Hit nennt man Hit-Rate. Cache-Miss, Miss-Time und Miss-Rate Ist das adressierte Datenwort nicht im Cache erfügbar, spricht man on einem Cache- Miss. Das Datenwort muss dann erst aus dem nachgeschalteten (langsameren/größeren) Speicher in den Cache geladen werden. Die Zeit, bis das Datenwort erfügbar ist, nennt man Miss-Time. Die mittlere Auftritts-Wahrscheinlichkeit für einen Cache-Miss nennt man Miss-Rate. Verdrängungsstrategien Durch die geringe Größe der schnellen Speicher ist deren Aufnahmekapazität stark begrenzt. Ist ein kleiner schneller Speicher oll, müssen erst Daten om kleinen schnellen in den großen langsamen Speicher zurückgeschrieben werden. Erst wenn durch diese sog. Verdrängung wieder Platz geschaffen wurde, können neue Daten om großen langsamen in den kleinen schnellen Speicher geladen werden. Gibt es mehrere Cache- Rahmen, an denen ein Arbeitsspeicher-Rahmen abgelegt werden kann, muss zunächst entschieden werden, welcher Cache-Rahmen erdrängt werden soll. Dazu gibt es mehrere Strategien, z.b.: LRU: LRU steht für least recently used und meint, dass derjenige Rahmen erdrängt wird, der am längsten nicht erwendet wurde. Die Implementierung ist aufwendig. LFU: LFU steht für least frequently used und meint, dass der am seltensten benutzte Rahmen erdrängt wird.
5 8.3 Begriffsklärungen 339 FIFO: FIFO steht für first in first out und meint, dass Rahmen in der Reihenfolge erdrängt werden, in der sie in den Cache-Speicher geschrieben wurden. Random: Die Auswahl des zu erdrängenden Rahmens erfolgt zufällig, d.h. ohne feste Regel. Dieses (planlose) Vorgehen kann gegenüber den anderen Verdrängungsstrategien durchaus Vorteile bieten: Ist die Reihenfolge der Datenzugriffe beispielsweise iterati konsekuti und die Menge der Daten so groß, dass nicht alle Daten gleichzeitig in den Cache passen, dann kann durch die Zufälligkeit sehr wahrscheinlich eine Hitrate > 0 erreicht werden, während LRU definiti zu einer Hit-Rate on 0 führt. Optimal: Es werden diejenigen Daten erdrängt, die am spätesten benötigt werden. Dieses Verfahren ist zwar optimal, in der Praxis jedoch nicht einsetzbar, da in der Regel nicht im Voraus bekannt ist, auf welche Daten zukünftig zugegriffen wird (Datenabhängigkeiten etc.). Das Verfahren kann jedoch als Referenz zu Bewertung anderer Verfahren erwendet werden. Schreibstrategien Wird auf ein im Cache-Speicher orhandenes Datenwort schreibend zugegriffen, gibt es zwei mögliche Vorgehensweisen: Write-Through: Das zu schreibende Datenwort wird sowohl im Cache-Speicher als auch auf den anderen Hierarchie-Ebenen (z.b. Arbeitsspeicher) aktualisiert. Dadurch werden in einem Mehrkern-Prozessorsystem Änderungen auch für andere Prozessorkerne zugänglich. Um die Befehlserarbeitung nicht aufzuhalten, werden die Schreibzugriffe gepuffert und asynchron im Hintergrund ausgeführt. Write-Back: Das zu schreibende Datenwort wird nur im Cache-Speicher aktualisiert. Die Synchronisierung mit den anderen Hierarchie-Ebenen erfolgt erst bei der Verdrängung des entsprechenden Cache-Blocks. Wird auf ein nicht im Cache befindliches Datenwort schreibend zugegriffen, gibt es ebenfalls zwei Vorgehensweisen: Write-Allocate: Das Datenwort wird im Cache gespeichert. Dazu muss ggf. zunächst ein Cache-Block erdrängt werden, beor der zur Speicheradresse gehörige Cache-Block in den Cache geladen werden kann. Ist der passende Cache-Block geladen, wird das neue Datenwort darin abgelegt. Write-No-Allocate/Write-Around: Das Datenwort wird nicht im Cache gespeichert. Das kann sinnoll sein, wenn klar ist, dass das Datenwort nicht mehr
6 340 8 Cache benötigt wird und ein Speichern ggf. die Verdrängung eines später benötigten Datenworts zur Folge hätte. Aufgaben a) Bei der Ausführung eines Programms auf einem System mit L1 Cache-Speicher und Arbeitsspeicher wird eine Hit-Rate on 70% beobachtet. Wie groß ist die Miss-Rate? 100% - 70% = 30% b) Bei der Ausführung eines Programms wird eine Hit-Rate on 90 % gemessen. Die Hit-Time beträgt 1 ns, die Miss-Time 50 ns. Wie groß ist die mittlere Speicher- Zugriffszeit? 1ns 0,9 + 50ns (1 0,9) = 0,9ns +5ns = 5,9ns c) Ein Programm besteht aus 90 Lade- und 10 Speicher-Befehlen, für deren Ausführung insgesamt 1,28 µs beobachtet werden. Wie groß ist die Hit-Rate, wenn die Hit-Time 1 ns und die Miss-Time 60 ns betragen? (h 1ns +(1 h) 60ns) 100 = 1280ns h 1ns +(1 h) 60ns = 12,8ns h (1 60)ns = 12,8ns 60ns h = 47,2ns 59ns = 0,8 Die Hit-Rate beträgt 80%.
7 8.4 Direkt-Abgebildeter Cache Direkt-Abgebildeter Cache Beim Direkt-Abgebildeten Cache (engl. direct mapped cache) wird jeder Speicher- Adresse genau eine feste Cache-Adresse zugeordnet. Dazu wird die Speicheradresse in drei Teile aufgeteilt: Die f Bit breite Rahmen-Nummer (engl. frame number) wählt einen on 2 f Cache-Rahmen (= Cache-Block = Cache-Zeile) aus. Die b Bit breite Byte-Auswahl wählt aus den 2 b pro Rahmen abgespeicherten Byte ein Byte aus. Wird nicht ein einzelnes Byte sondern ein aus mehreren Byte zusammengesetztes Datenwort adressiert, kann durch Löschen der niederwertigsten Bits eine entsprechende Wort-Adresse erzwungen werden. Mit dem k Bit breiten Schlüssel (engl. key) kann überprüft werden, ob in dem ausgewählten Rahmen die zur Speicheradresse gehörigen Daten abgelegt sind. Diese Überprüfung ist notwendig, da bei einem 2 n = 2 k+f +b Byte großen Arbeitsspeicher jeweils 2 k unterschiedliche 2 b Byte große Arbeitsspeicher- Blöcke auf den selben durch f adressierten Cache-Rahmen abgebildet werden. Arbeitsspeicher-Adresse (k + f + b Bits) k Bits Schlüssel f Bits Rahmen-Nr. b Bits Byte-Auswahl k (key) f (frame) Rahmen (frame) b bytes 0 b f 2-1 k Bits f In diesen k 2 Bits des sog. Tag-RAMs ist der on jedem Cache-Rahmen erwendete Schlüssel abgespeichert f+b In diesen 2 Byte sind die Cache-Daten abgespeichert (Cache-Inhalt)
8 342 8 Cache Wird ein neuer Rahmen im Cache abgelegt, so wird der Schlüssel-Teil der Arbeitsspeicher-Adresse an Adresse f des sog. Tag-RAMs (engl. tag = Etikett) abgelegt. Bei einem erneuten Zugriff muss das durch die Rahmen-Nummer ausgewählte Tag mit dem Schlüssel-Teil der Arbeitsspeicher-Adresse erglichen werden. Sind der Schlüssel und das abgespeicherte Tag identisch, dann ist in dem durch f adressierten Rahmen tatsächlich das adressierte Datenwort gespeichert. Durch die Byte-Auswahl b kann das entsprechende Datenwort dann adressiert und ausgelesen werden. Sind Schlüssel und Tag unterschiedlich, dann ist im adressierten Rahmen nicht der zum Datenwort gehörige Speicher-Block abgelegt, sondern einer der 2 k 1 möglichen anderen. Beor auf den Cache zugegriffen werden kann, muss der im Cache gespeicherte Rahmen zunächst in den Arbeitsspeicher erdrängt werden. Anschließend kann der adressierte Speicher-Block om Arbeitsspeicher in den zugehörigen Cache-Rahmen kopiert werden. Um die Arbeitsspeicher- Adresse des im Cache abgespeicherten Datenworts später wieder eindeutig identifizieren zu können, wird der Schlüssel-Teil der Speicheradresse im Tag- RAM an der durch f adressierten Stelle abgelegt. Zum Vergleich des Schlüssels mit dem Tag werden k 1 Bit-Vergleicher benötigt. Das sog. Valid-Bit zeigt an, ob im adressierten Cache-Rahmen gültige Daten stehen. Zu Beginn sind alle Valid-Bits gelöscht. Wird ein Rahmen om Arbeitsspeicher in den Cache geladen, wird das Valid-Bit auf 1 gesetzt. Neben dem Valid-Bit wird bei Caches mit write-back-schreibstrategie zusätzlich ein sog. Dirty-Bit erwendet, welches anzeigt, ob die im Rahmen befindlichen Daten geändert wurden. Geänderte Daten müssen beim Verdrängen wieder in den Arbeitsspeicher kopiert werden, uneränderte nicht. Durch die einfache Rahmenauswahl sind direktabgebildeten Caches sehr schnell. Erfolgen jedoch Zugriffe on Adressen mit identischen Rahmen-Nummern, aber unterschiedlichen Schlüsseln, so erdrängen sich die Zugriffe permanent gegenseitig, auch wenn noch andere Rahmen frei wären. Verdrängungsstrategien wie LRU o.ä. zur Auswahl des zu erdrängenden Rahmens finden hier keine Anwendung, da der zu erdrängende Rahmen direkt durch f festgelegt ist. Aufgaben a) Wieiele Einträge hat das Tag-RAM, wenn zur Codierung der Rahmen-Nummer 20 Bits erwendet werden? 2 20 = 1M
9 8.4 Direkt-Abgebildeter Cache 343 b) Welcher Rahmen wird beim Zugriff mit der 64 Bit breiten Arbeitsspeicher-Adresse 0x ABCDEF ausgewählt, wenn der Schlüssel mit 40 Bits und die Byteauswahl mit 12 Bits codiert wird? 0xABC c) Welcher Rahmen wird beim Zugriff mit der 64 Bit breiten Arbeitsspeicher-Adresse 0x ABCDEF ausgewählt, wenn der Schlüssel mit 38 Bits und die Byteauswahl mit 10 Bits codiert wird? Geben Sie den Wert hexadezimal an = = 0x6AF3. d) Wieiele 1-Bit-Vergleicher sind allgemein zum Vergleich des Schlüssels mit dem adressierten Tag-RAM-Eintrag notwendig? k Bit e) Warum werden bei einem Arbeitsspeicher-/Cache-Zugriff die oberen k Bits der Arbeitsspeicher-Adresse im Tag-RAM abgelegt? Da ein Cache-Rahmen für sehr iele Arbeitsspeicher-Rahmen zuständig ist, muss man sich irgendwie merken, welcher der ielen möglichen Arbeitsspeicher-Rahmen gerade im Cache abgespeichert ist. f) Wie groß ist ein Cache-Rahmen, wenn zur Codierung der Byte-Auswahl 12 Bits erwendet werden? 2 12 = 4096 Byte = 4 kbyte g) In einem Cache-Rahmen können 16 Octas abgelegt werden. Wieiele Bits werden zur Codierung der Byteauswahl benötigt? 16 8 Byte = 128 Byte ) 7 Bits
10 344 8 Cache 8.5 Voll-Assoziatier Cache Bei einem Voll-Assoziatien Cache (engl. fully associatie cache) können die Daten eines Arbeitsspeicher-Rahmens in jedem beliebigen Cache-Rahmen abgelegt werden. So wird sichergestellt, dass erst dann Rahmen entsprechend der eingesetzten Verdrängungsstrategie (z.b. LRU) erdrängt werden müssen, wenn alle Cache-Rahmen belegt sind. Die Wahrscheinlichkeit für eine Verdrängung ist beim Voll-Assoziatien Cache somit geringer als beim Direktabgebildeten Cache. Jedoch ist beim Voll-Assoziatien Cache die Identifikation des korrekten Rahmens aufwendiger () langsamer), da der Schlüssel mit den Tags aller Rahmen erglichen werden muss. Aufgaben a) Wie muss die Arbeitsspeicher-Adresse zur Adressierung eines Voll-Assoziatien Caches aufgeteilt werden? Es muss kein Rahmen ausgewählt werden ) die Arbeitsspeicher-Adresse wird nur in Schlüssel und Byteauswahl unterteilt. b) Ein ollassoziatier MMIX-Cache-Speicher erwendet eine Rahmengröße on 256 Byte. Wieiele Bits werden zur Codierung des Schlüssels erwendet? 64-8 = 56. c) Ein 32 kbyte großer ollassoziatier MMIX-Cache-Speicher erwendet eine Rahmengröße on 256 Byte. Wieiele 1-Bit-Vergleicher sind zum Vergleich des Schlüssels mit den Tags notwendig? Anzahl der Tag-RAM-Einträge: 32 kbyte / 256 Byte = Bit-Vergleicher: 128 * (64-8) = 128 * 56 = =2 7 = 128. Anzahl der
11 8.6 Set-Assoziatier Cache Set-Assoziatier Cache Ein Set-Assoziatier Cache (engl. set associatie cache) kann als Kompromiss zwischen einem Direkt-Abgebildeten und einem Voll-Assoziatien Cache angesehen werden. Die Arbeitsspeicher-Adresse wird wie beim Direkt-Abgebildeten Cache in drei Teile aufgeteilt. Der Mittlere Teil ist hier jedoch nicht einem einzigen Rahmen zugeordnet, sondern einer Menge (engl. set) an Rahmen. Die Anzahl der Rahmen in dieser Menge heißt Assoziatiität a. Nach der Adressierung der potentiellen Rahmen müssen beim Set-Assoziatien Cache nur a Tags parallel mit dem Schlüssel erglichen werden. Verglichen mit dem Direkt-Abgebildeten Cache ist die Rahmensuche aufwendiger, die Verdrängungswahrscheinlichkeit jedoch geringer. Verglichen mit dem Voll-Assoziatien Cache ist die Rahmensuche weniger aufwendig, die Verdrängungswahrscheinlichkeit jedoch höher. Arbeitsspeicher-Adresse (k + s + b Bits) k Bits Schlüssel s Bits Set-Nr. b Bits Byte-Auswahl k (key) Assoziatiität a = 2 s (set) Rahmen (frame) b bytes 0 b s k Bits s In diesen k 2 Bits des sog. Tag-RAMs ist der on jedem Cache-Rahmen erwendete Schlüssel abgespeichert s+b In diesen a 2 Byte sind die Cache-Daten abgespeichert (Cache-Inhalt) Zur Detektion, ob ein Arbeitsspeicher-Rahmen im Cache liegt, muss der Schlüssel der Arbeitsspeicher-Adresse mit allen Tags des durch die Set-Nummer adressierten Cache- Sets erglichen werden. Die Entscheidung, welcher Rahmen eines Sets erdrängt werden muss, erfolgt entsprechend der angewendeten Verdrängungsstrategie (z.b. LRU).
12 346 8 Cache Aufgaben a) Wieiele 1-Bit-Vergleicher sind für einen 4 fach Set-Assoziatien MMIX-Cache notwendig, wenn die Rahmengröße 2048 Byte beträgt und bei jeder sten Speicheradresse auf dasselbe Set zugegriffen wird? Wieiele Sets hat der Cache? Zugriff auf dasselbe Set jede ste Arbeitsspeicher-Adresse ) s + b = 28 ) s= 28 - b = = 17. ) Der Cache hat 2 17 Sets. Schlüsselbreite: k = = 36 Anzahl der Vergleicher: 36 4 = 144. b) Über wieiele Cache-Rahmen erfügt ein 8 fach Set-Assoziatier MMIX-Cache, wenn zur Codierung der Set-Nummer 13 Bit erwendet werden? = 2 16 = Ein 8 fach Set-Assoziatier MMIX-Cache hat eine Größe on 1 MB. Die Rahmengröße beträgt 32 Byte. c) Wieiele Bits werden zur Codierung der Byteauswahl, der Setnummer und des Schlüssels erwendet? Byteauswahl: ld(32) Bit = 5 Bit Anzahl der Sets: 1 MB / (32 8) Byte = =2 12 ) 12 Bits zur Codierung der Setnummer Schlüssel: = 47
13 8.6 Set-Assoziatier Cache 347 Ein 16 fach Set-Assoziatier MMIX-Cache hat 2048 Cache Sets. Zum Vergleich des Schlüssels mit den Tags werden 688 Vergleicher erwendet. d) Welche Rahmengröße hat der Cache? Schlüssel: 688 / 16 = 43 Setnummer: ld(2048) = 11 Byteauswahl: = 10 Rahmengröße: 2 10 Byte = 1024 Byte Ein Set-Assoziatier Cache erwendet zur Codierung des Schlüssels 41 Bit, zur Codierung der Setnummer 16 Bit und zur Codierung der Byteauswahl 7 Bit. e) Geben Sie für folgende Arbeitsspeicher-Adressen die zugehörige Set-Nummer an. 0x : 0x : 0x B 0228: 0x0000 0x468A 0x1604
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
MehrIn 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é 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
MehrGrob-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
MehrGrundlagen 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
MehrQuiz. 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
MehrCache 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.
MehrBesprechung 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
MehrCache 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
MehrSpeicherhierarchie, 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?
MehrGrundlagen der Rechnerarchitektur
Grundlagen der Rechnerarchitektur Speicher Übersicht Speicherhierarchie Cache Grundlagen Verbessern der Cache Performance Virtueller Speicher SS 2012 Grundlagen der Rechnerarchitektur Speicher 2 Speicherhierarchie
MehrGrundlagen 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, 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, 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
MehrLö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
MehrGrundlagen 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
MehrTechnische 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
MehrSpeicherverwaltung (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Ü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),
MehrPhysische Datenorganisation
Physische Datenorganisation Speicherhierarchie Hintergrundspeicher / RAID ( B-Bäume Hashing R-Bäume ) Kapitel 7 1 Überblick: Speicherhierarchie Register Cache Hauptspeicher Plattenspeicher Archivspeicher
MehrBetriebssysteme (BTS)
.Vorlesung Betriebssysteme (BTS) Christian Baun cray@unix-ag.uni-kl.de Hochschule Mannheim Fakultät für Informatik Institut für Betriebssysteme..007 Organisatorisches zur Übung Verteilung auf die beiden
MehrGrundlagen 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
MehrCache-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
MehrWie 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
Mehr6 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(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
MehrTeil 2: Speicherstrukturen
Inhalt Teil 2: Speicherstrukturen Hauptspeicher Cache Assoziativspeicher Speicherverwaltungseinheit ( Memory Management Unit ) 1 Virtueller Speicher Trennung von virtuellem Adreßraum (mit virtuellen Adressen)
MehrSpeicherorganisation
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
Mehr6 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
MehrProseminar 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, 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
MehrCache-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Ü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
MehrTechnische 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
MehrSpeicher. 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
MehrEinfü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
MehrCache. 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
MehrFreispeicherverwaltung 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
MehrTechnische 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
MehrVorlesung: 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
MehrLö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
MehrTechnische 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(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
MehrSchreiben 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
MehrRechnergrundlagen 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
MehrADS: Algorithmen und Datenstrukturen
ADS: Algorithmen und Datenstrukturen Teil X Peter F. Stadler & Konstantin Klemm Bioinformatics Group, Dept. of Computer Science & Interdisciplinary Center for Bioinformatics, University of Leipzig 13.
MehrLö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
MehrProseminar 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
MehrVirtueller 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
MehrAufgabe 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
MehrFachbericht 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
Mehr1. Welche Speichereinheiten werden belegt, wenn die folgenden Strategien eingesetzt werden?
Sommersemester 009 Konzepte und Methoden der Systemsoftware Universität Paderborn Fachgebiet Rechnernetze Hausübung 05 Abgabe am 0.07.009 (Kästen D) Aufgabe : Speicherzuteilung (6++=8 Punkte) Es sei der
MehrLö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
MehrLeichtgewichtsprozesse
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
MehrLeichtgewichtsprozesse
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
MehrLehrveranstaltung: PR Rechnerorganisation Blatt 10. Thomas Aichholzer
Aufgabe 10.1 Gegeben sei folgendes Code-Fragment, das zwei geschachtelte Schleifen implementiert: addi $t0, $a0, 100 outer: addi $t1, $a1, 200 inner: lw $t4, 0($t0) lw $t5, 0($t1) add $t2, $t0, $t1 add
MehrZeiger. C-Kurs 2012, 2. Vorlesung. Tino Kutschbach 10.
Zeiger C-Kurs 2012, 2. Vorlesung Tino Kutschbach tino.kutschbach@campus.tu-berlin.de http://wiki.freitagsrunde.org 10. September 2012 This work is licensed under the Creative Commons Attribution-ShareAlike
MehrAlgorithm 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
Mehr1. räumliche Lokalität - Nach dem Zugriff auf eine bestimmte Adresse erfolgt in naher Zukunft ein erneuter Zugriff auf ein dazu benachbartes Datum.
Aufgabe 1 a) Warum besitzen nahezu alle modernen Prozessoren einen Cache? Zur Überbrückung der Prozessor-Speicher-Lücke. Geschwindigkeit des Arbeitsspeichers ist nicht in gleichem Maße gestiegen wie die
MehrGrundlagen der Informatik III Wintersemester 2010/2011
Grundlagen der Informatik III Wintersemester 2010/2011 Wolfgang Heenes, Patrik Schmittat 6. Aufgabenblatt mit Lösungsvorschlag 06.12.2010 Hinweis: Der Schnelltest und die Aufgaben sollen in den Übungsgruppen
MehrRO-Tutorien 3 / 6 / 12
RO-Tutorien 3 / 6 / 12 Tutorien zur Vorlesung Rechnerorganisation Christian A. Mandery WOCHE 10 AM 01./02.07.2013 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft
MehrDatenpfaderweiterung Der Single Cycle Datenpfad des MIPS Prozessors soll um die Instruktion min $t0, $t1, $t2 erweitert werden, welche den kleineren
Datenpfaderweiterung Der Single Cycle Datenpfad des MIPS Prozessors soll um die Instruktion min $t0, $t1, $t2 erweitert werden, welche den kleineren der beiden Registerwerte $t1 und $t2 in einem Zielregister
MehrFreispeicherverwaltung
Freispeicherverwaltung Allgemeine Techniken und Anwendung unter Linux Martin Wahl, 17.11.03 Freispeicherverwaltung 1 Überblick Allgemeines Suchstrategien Verwaltungsstrategien externer / interner Verschnitt
MehrWas machen wir heute? Betriebssysteme Tutorium 11. Mounten: Vorher. Frage 11.1.a
Was machen wir heute? Betriebssysteme Tutorium 11 Philipp Kirchhofer philipp.kirchhofer@student.kit.edu http://www.stud.uni-karlsruhe.de/~uxbtt/ Lehrstuhl Systemarchitektur Universität Karlsruhe (TH) 1
MehrBetriebssysteme. Dipl.-Ing.(FH) Volker Schepper
Speicherverwaltung Real Mode Nach jedem starten eines PC befindet sich jeder x86 (8086, 80386, Pentium, AMD) CPU im sogenannten Real Mode. Datenregister (16Bit) Adressregister (20Bit) Dadurch lassen sich
MehrBesprechung 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
MehrVorlesung Rechnerarchitektur. Speicher V 1.2
Speicher V 1.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
MehrName: Vorname: Matr.-Nr.: 4. a) RISC-Architekturen müssen zur Decodierung von Maschinenbefehlen stets ein mikroprogrammierbares Steuerwerk verwenden.
Name: Vorname: Matr.-Nr.: 4 Aufgabe 1 (8 Punkte) Entscheiden Sie, welche der folgenden Aussagen zum Thema CISC/RISC-Prinzipien korrekt sind. a) RISC-Architekturen müssen zur Decodierung von Maschinenbefehlen
MehrEnterprise Computing Einführung in das Betriebssystem z/os. Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth WS2012/13
UNIVERSITÄT LEIPZIG Enterprise Computing Einführung in das Betriebssystem z/os Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth WS2012/13 Verarbeitungsgrundlagen Teil 4 Cache el0100 copyright W.
MehrGrundlagen 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.
MehrPhilipp Grasl PROZESSOREN
1 PROZESSOREN INHALTSVERZEICHNIS Definition/Verwendung Prozessor Historische Entwicklung Prozessor Aufbau Prozessor Funktionsweise Prozessor Steuerung/Maschinenbefehle Prozessorkern Prozessortakt 2 DEFINITION
Mehr3.Vorlesung Systemsoftware (SYS) Hochschule Mannheim
Christian Baun 3.Vorlesung Systemsoftware Hochschule Mannheim WS0809 1/42 3.Vorlesung Systemsoftware (SYS) Hochschule Mannheim Christian Baun Forschungszentrum Karlsruhe Institut für Wissenschaftliches
MehrVirtueller Speicher und Cache. VL5 GRT, SS 2004, Kneisel
Virtueller Speicher und Cache VL5 GRT, SS 2004, Kneisel Speicherhierarchie Übersicht! Ausgangsproblem, Motivation! Virtueller Speicher " Paging, Adressübersetzung, Pufferung " Segmentierung Abgrenzung
MehrT c) Daten welcher Größenordnung kann ein Register aufnehmen: Byte, kilobytes, megabytes, gigabytes or terabytes?
222 6 MMIXProzessor Verständnisfragen/Aufgaben Allgemein T a) Was ist ein Register? Kleiner aber Schneller Speicher T b) Wo findet man Register in einem ComputerSystem? Prozessor T c) Daten welcher Größenordnung
MehrDigital 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)
MehrEin konfigurierbarer, visueller Cache-Simulator unter spezieller Berücksichtigung komponenten- basierter Modellierung mit Java Beans
Ein konfigurierbarer, visueller Simulator unter spezieller Berücksichtigung komponenten- basierter Modellierung mit Java Beans Holger 6. März 2001 Universität Wilhelm-Schickard-Institut für dieser Arbeit
MehrG. 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.
MehrDas 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
Mehr5. 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.
MehrGrundlagen 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
MehrPaging. 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
MehrOne of the few resources increasing faster than the speed of computer hardware is the amount of data to be processed. Bin Hu
Bin Hu Algorithmen und Datenstrukturen 2 Arbeitsbereich fr Algorithmen und Datenstrukturen Institut fr Computergraphik und Algorithmen Technische Universität Wien One of the few resources increasing faster
Mehr2017/01/23 15:50 1/5 Bedienung
2017/01/23 15:50 1/5 Bedienung Bedienung (J.Müller, Hilfe zu JTCEMU) Das originale 2K-System Das 2 KByte große Betriebssystem bietet die wichtigsten Funktionen zur Eingabe und Verwaltung von BASIC-Programmen.
Mehr11. Die PC-Schnittstelle
PC-Schnittstelle Funktion -1. Die PC-Schnittstelle.1. Funktion Die folgenden Angaben gelten ohne Einschränkung für den PC, PC-XT, PC-AT, AT-386, AT-486 und kompatible Rechner. Sie sind nur für jene interessant,
MehrEin- Ausgabeeinheiten
Kapitel 5 - Ein- Ausgabeeinheiten Seite 121 Kapitel 5 Ein- Ausgabeeinheiten Am gemeinsamen Bus einer CPU hängt neben dem Hauptspeicher die Peripherie des Rechners: d. h. sein Massenspeicher und die Ein-
MehrRückblick: Architektur und Hintergrundspeicher
Rückblick: Architektur und Hintergrundspeicher Prototypische Architektur eines RDBMS Speicherhierarchie mit Zugriffslücke (10 5 ) zwischen Primär- und Sekundärspeicher (z.b. HDD) RAIDs zur Erhöhung der
MehrSysteme I: Betriebssysteme Kapitel 8 Speicherverwaltung. Maren Bennewitz
Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung Maren Bennewitz Version 29.1.214 1 Inhalt Vorlesung Aufbau einfacher Rechner Überblick: Aufgabe, Historische Entwicklung, unterschiedliche Arten
MehrPhysische Datenorganisat
Physische Datenorganisat Speicherhierarchie Hintergrundspeicher / RAID B-Bäume Hashing (R-Bäume ) Objektballung Indexe in SQL Kapitel 7 1 Überblick: Speicherhierarchie Register Cache Hauptspeicher Plattenspeicher
MehrPhysische Datenorganisat
Physische Datenorganisat Speicherhierarchie Hintergrundspeicher / RAID B-Bäume Hashing (R-Bäume ) Objektballung Indexe in SQL Überblick: Speicherhierarchie 1 8 Byte Compiler Register 8 128 Byte Cache Cache-Controller
MehrZusammenhang Interrupt, Befehlszyklus, indirekte Adressierung und Mikroprogramm [Stallings, Kap. 15, S ]
2.1.2 Behandlung von Unterbrechungen (Interrupts) Zusammenhang Interrupt, Befehlszyklus, indirekte Adressierung und Mikroprogramm [Stallings, Kap. 15, S. 582-585] t 1 : MAR (PC) t 2 : MBR Memory[MAR] PC
MehrTU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D.
TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D. Blatt Nr. 07 Übung zur Vorlesung Einsatz und Realisierung von Datenbanksystemen im SoSe16 Moritz Kaufmann
MehrSpeicherhierarchie. [Technische Informatik Eine Einführung] Univ.-Prof. Dr. Paul Molitor
[Technische Informatik Eine Einführung] Univ.-Prof. Dr. Paul Molitor Lehrstuhl für Technische Informatik Institut für Informatik Martin-Luther-Universität Halle-Wittenberg Januar 2006 1 / 100 Inhalt dieser
MehrTutorium Rechnerorganisation
Woche 9 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
MehrSUB $2,$5,10 Zeile 1 LDO $5,$0,2*8 Zeile 2 OR $1,$2,$3 Zeile 3 SRU $1,$5,$1 Zeile 4.
33 7 Pipelining Gegeben ist der folgende Ausschnitt aus einer MMIX Codesequenz: SUB $2,$5, Zeile LDO $5,$,2* Zeile 2 OR $,$2,$3 Zeile 3 SRU $,$5,$ Zeile 4 Zeile und 3 wg b) Geben Sie alle auftretenden
MehrQuantitative 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
MehrBetriebssysteme 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