CPU. Memory. Highest. Fastest. Smallest. Memory. Biggest. Lowest
|
|
- Kerstin Kranz
- vor 6 Jahren
- Abrufe
Transkript
1 Speed CPU Size Cost ($/bit) Fastest Memory Smallest Highest Memory Slowest Memory Biggest Lowest
2 Processor Data are transferred
3 CPU Levels in the memory hierarchy Level Level 2 Increasing distance from the CPU in access time Level n Size of the memory at each level
4 Die Speicher-Hierarchie funktioniert nur aufgrund der Lokalität von Zugriffen auf die jeweils unterliegende Speicher-Ebene: zeitliche Lokalität: auf den Zugriff auf ein Datum folgt mit hoher Wahrscheinlichkeit bald ein erneuter Zugriff. räumliche Lokalität: auf den Zugriff auf ein Datum folgt mit hoher Wahrscheinlichkeit bald ein Zugriff auf ein benachbartes Datum. Der Nutzen der Speicher-Hierarchie beruht wieder auf einer 90/0-Faustregel: ein Programm verbraucht 90% der Laufzeit in 0% des Codes.
5 X4 X Xn 2 X4 X Xn 2 Xn X2 X3 a. Before the reference to Xn Xn X2 Xn X3 b. After the reference to Xn
6 Cache Memory
7 Hit Tag Address (showing bit positions) Index Byte offset Data Index 0 2 Valid Tag Data
8 direct mapped/-assoziativer cache mit 8 -Wort- Blöcken m m m m m t m t m m t t Adresse mod 8 4 hits Keine räumliche Lokalität! Keine Verdrängungsstrategie!
9 Address (showing bit positions) Hit 6 4 Byte offset Data 6 bits 32 bits Valid Tag Data 6K entries 6 32
10 Address (showing bit positions) Hit Tag Byte offset Index Block offset Data 6 bits 28 bits V Tag Data 4K entries Mux 32
11 direct mapped/-assoziativer cache mit 4 2-Wort- Blöcken (24,25) (6,7) (26,27) 2 (4,5) (4,5) (4,5) 3 (6,7)(4,5) (4,5) (6,7)(4,5) (6,7) (Adresse/2) mod 4 3 hits Keine Verdrängungsstrategie!
12 40% 35% 30% Miss rate 25% 20% 5% 0% 5% 0% Block size (bytes) KB 8 KB 6 KB 64 KB 256 KB
13 CPU CPU CPU Cache Multiplexor Cache Cache Bus Bus Bus Memory Memory bank 0 Memory bank Memory bank 2 Memory bank 3 Memory b. Wide memory organization c. Interleaved memory organization a. One-word-wide memory organization
14 Direct mapped Block # Set associative Set # Fully associative Data Data Data Tag 2 Tag 2 Tag 2 Search Search Search
15 One-way set associative (direct mapped) Block Tag Data Two-way set associative Set Tag Data Tag Data Four-way set associative Set 0 Tag Data Tag Data Tag Data Tag Data Eight-way set associative (fully associative) Tag Data Tag Data Tag Data Tag Data Tag Data Tag Data Tag Data Tag Data
16 2-assoziativer cache mit -Wort-Blöcken (2-assoziativ, also 2 Blöcke pro set) set 0 6 set set set m m m m m t t t m m t t Adresse mod 4 5 hits Keine räumliche Lokalität! least recently used, LRU!
17 Address Index V Tag Data V Tag Data V Tag Data V Tag Data to- multiplexor Hit Data
18 2-assoziativer cache mit 2-Wort-Blöcken (2-assoziativ, also 2 Blöcke pro set) set 0 (4,5) (4,5) (4,5) (24,25) (6,7) set (6,7) (6,7) (26,27) (4,5) (4,5) (4,5) (6,7) m m m m s t t t m m t m (Adresse/2) mod 2 5 hits least recently used, LRU!
19 Virtual addresses Address translation Physical addresses Disk addresses
20 Virtual address Virtual page number Page offset Translation Physical page number Page offset Physical address
21 Page table register Virtual address Virtual page number Page offset 20 2 Valid Physical page number Page table If 0 then page is not present in memory Physical page number Page offset Physical address
22 Virtual page number Valid Page table Physical page or disk address Physical memory Disk storage
23 Vergleich cache vs memory H.&P. cache/memory physical/virtual 990 proc cache cache memory hard disk memory block 4-28B 52B-8KB page hit time cycle 0 cycles hit time miss time 8-32 cycles 00K-600K cycles miss time access time 6-0 cycles 00K-500K cycles access time transfer time 2-22 cycles 0K-00K cycles transfer time miss rate miss rate cache size KB 256KB 4MB 2GB memory size SRAM 5 25ns typical access times (997) DRAM 60 20ns Disk 0 20 Mio ns
24 Konsequenzen aus der gigantischen page fault penalty große pages aber Verschnitt und Transfer-Zeit Verringern der page fault rate per optimaler Verdrängungstrategie (fully associative, LRU) handling of page faults per software, i.e. os write back strategy
25 Reduktion des Speicherbedarfs der page tables dynamisch wachsende page tables (eine bzw. zwei pro Prozess, falls Adreß-Raum in eine bzw. zwei Richtungen wächst.) inverted page table / hashing hierarchy of page tables paging the page tables
26 Virtual page number Valid Tag TLB Physical page address 0 Physical memory Page table Physical page Valid or disk address Disk storage
27 designing the translation lookaside buffer (TLB) feature typical size 32 4K entries block size 2 page table entries 4 8B each hit time 0.5 clock cycle miss penalty 0 30 clock cycles miss rate 0.0% % TLB miss und page fault sind zu unterscheiden! entweder kleine, voll-assoziative TLBs oder große TLBs, direct mapped oder mit geringer Assoziativität Reduktion der TLB miss penalty ohne page fault per simpler Verdrängungsstrategie
28 Virtual address Virtual page number Page offset 2 TLB TLB hit Valid Dirty Tag Physical page number 20 Physical page number Page offset Physical address Physical address tag Cache index 6 4 Byte offset 2 Valid Tag Data Cache 32 Cache hit Data
29 Virtual address TLB access TLB miss exception No TLB hit? Yes Physical address No Write? Yes Cache miss stall No Try to read data from cache Cache hit? Yes No Write protection exception Write access bit on? Yes Write data into cache, update the tag, and put the data and the address into the write buffer Deliver data to the CPU
30 DECstation 300: nur 4 Kombinationen von mindestens einem miss bei Zugriff auf TLB, (physically indexed/tagged) cache und page table möglich: page cache TLB table scenario miss hit hit TLB hit, page table irrelevant, cache miss hit miss hit TLB miss, page table hit, cache hit miss miss hit TLB miss, page table hit, cache miss miss miss miss TLB miss, page fault, on retry cache must miss * hit miss translation ok contradicts page not in memory hit miss miss cache hit contradicts page not in memory virtually indexed/tagged caches verwenden virtuelle Adressen!
31 Vorbedingungen für protection mindestens zwei Modi: user/operating system (kernel, supervisor) mode nur im system mode kann das os mit speziellen Instruktionen page table register, TBL usw. schreiben kontrollierter, begrenzter Wechsel von user mode in system mode etwa per system call (exception)
32 5% 2% 9% Miss rate 6% 3% 0% One-way Two-way Four-way Eight-way Associativity KB 2 KB 4 KB 8 KB 6 KB 32 KB 64 KB 28 KB
33 4% 2% 0% Miss rate per type 8% 6% 4% 2% Capacity 0% Cache size (KB) One-way Two-way Four-way Eight-way
34 00 Improvement factor Year CPU (fast) CPU (slow) DRAM
35 memory hierarchies PentiumPro vs PowerPC604 feature Pentium Pro PowerPC 604 virtual addresses 32 bit 52 bit physical addresses 32 bit page size 4KB, 4MB 4KB, 256MB TLB split I-TLB und D-TLB beide 4-ass. beide 2-ass. pseudo LRU LRU 32 I-TLB lines 28 I-TLB lines 64 D-TLB lines 28 D-TLB lines hw handles TLB misses
36 st level caches Pentium Pro vs PowerPC 604 feature Pentium Pro PowerPC 604 organisation split I-cache and D-cache cache sizes 8KB each 6KB each associativity 4-associative replacement pseudo LRU LRU block size 32B write policy write back write back/through 2nd level caches Pentium Pro vs PowerPC 604: 256KB or 52KB instructions and data
37 Anforderung an ein Memory Management address translation: logical physical (virtual memory, relocation) effiziente Nutzung des physikalischen Speichers schneller context switch Protection innerhalb und zwischen Prozessen (code/data, user/system, multiprogramming) sharing memory regions: sharing code (reentrant programs), sharing data (inter-process communication) dynamic allocation of new memory, dynamic sizing of existing memory (heap, stack)
38 Segmentation segments = logical units of programs, individual base address, length, protection etc. in segment descriptor table, e.g. code, data, stack, heap cp. Intel 80x86 segment registers: CS, DS, ES, SS... plus SegReg:Offset addressing, VAX virtual address = segment, offset if (offset>segment.length) protection fault physical address = segment.base address + offset address translation per adder Nutzung des physikalischen Speichers: ohne interne aber mit externer Fragmentierung (splinters, crunching), Segmente sind ganz oder garnicht geladen! schneller context switch Protection: differenziert (f/r/w/e), einfach memory sharing: simpel wie protection dynamic allocation of new memory, dynamic sizing of existing memory: schwierig
39 paging vs segmentation paging -Wort-Adressen HW-orientiert große page table oder hierarchy Seiten fester Größe einfache Blockersetzung schwierige Protection interne Fragmentierung ungenutzter Teile einer Seite Nachteil: thrashing augmentation einfach resizing einfach segmentation 2-Wort-Adressen SW-orientiert kleine segment descriptor table Segmente variabler Größe (code/data) schwierige Blockersetzung einfache Protection externe Fragmentierung ungenutzte Teile des Hauptspeichers Nachteil: splinters, zustzlicher Adder augmentation schwierig resizing schwierig (crunching) context switch?
40 combining paging & segmentation Intel 80x86 segments, paged segments... AT&T,DG,IBM/370,VAX,MC68030,80x86 2-level virtual address = segindex pagindex offset physical address = PT[ST[root+segindex].physpage +pagindex].page+offset + : sharing, non-contiguous PT, growth : große contiguous ST in main memory, dynamic growth schwierig MC level: segment, outer, middle, inner page table + : gut für über den ganzen, großen virtuellen Speicher verteilte Daten, kleine PTs : max 4 memory references, PTs mit hoher interner Fragmentierung IBM RS6000 inverted page table (linked list) + : kleine inverted PT in main memory : Anzahl memory accesses für address translation nicht const.
41 Intel 80x86/Pentium Memory Management unsegmented, unpaged memory: etwa für high performance µ-controllers... unsegmented, paged memory: e.g. Berkeley UNIX segmented, unpaged memory: high granularity protection, segment in memory ST in memory, also absehbare Zugriffszeiten segmented, paged memory: e.g. UNIX System V
42 Intel 80x86/Pentium Memory Management 2 virtual addresses = logical addresses = 6bit segment 32bit offset unsegmented memory: 2 32 B = 4GB segmented memory: (2bit segment für protection) B = 64TB physical address space: 2 32 B = 4GB global virtual memory: 4K segments a 4GB local virtual memory: 4K segments a 4GB
43 Intel 80x86/Pentium Memory Management 3 protection of segments: privilege level (geschützt 0 3 ungeschützt) plus access attributes (data: r/w; code: r/e) Programm mit PL p darf nur auf Daten mit PL d zugreifen, falls p d PL0 für MM, protection, access control PL für OS-Rest PL2 für application security (DBMS) PL3 für application virtual address = 6bit segment selector 32bit offset segment selector = 3bit Index TI RPL TI = bit Table Indicator = local/global RPL = 2bit requested privilege level
44 Intel 80x86/Pentium Memory Management 4 segmentation = address translation: virtual address linear address = 0bit dirindex 0bit pagindex 2bit offset paging = address translation: linear address physical address 2-stufiges table lookup erzeugt physical address: dirindex indiziert das page (table) directory mit max. K Einträgen und damit eine der max. K page tables mit max. K Einträgen für 4K pages. pagindex indiziert in dieser page table den Eintrag eine Seite. physical address = (PT-No.[PTD[dirindex]]) [pagindex]+offset
45 Intel 80x86/Pentium Memory Management 5 segment table, page table directory und page table 32bit entries enthalten Informationen zu Zielgrößen, protection, Verfügbarkeit, write strategy, dirty bit etc. Pentium vefügt über einen TLB mit 32 page table entries. Im Unterschied zu und unterstützt der Pentium zwei Seitengrößen: if page size extension (PSE) == then size=4kb or size=4mb Bei 4MB-Seiten ergibt sich entsprechend nur ein table lookup!
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
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
MehrMain Memory. Hauptspeicher. Memories. Speichermodule. SIMM: single inline memory module 72 Pins. DIMM: dual inline memory module 168 Pins
5 Main Memory Hauptspeicher Memories 2 Speichermodule SIMM: single inline memory module 72 Pins DIMM: dual inline memory module 68 Pins 3 Speichermodule 4 Speichermodule 5 Speichermodule 6 2 Hauptspeicher
MehrZwei 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
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
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
MehrLinux 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
MehrVirtueller 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é 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
Mehr7. Speicherverwaltung
7. Speicherverwaltung Ziele Zuteilung des Arbeitsspeicher Abbildung der symbolischen Adresse auf die physikalische Adresse Adress-Transformation Symbolische Adresse verschiebbare Adresse physikalische
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
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
MehrTechnische 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
MehrMemory 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
MehrMemory. Jian-Jia Chen (Slides are based on Peter Marwedel) Informatik 12 TU Dortmund Germany 2014 年 11 月 12 日. technische universität dortmund
12 Memory Jian-Jia Chen (Slides are based on Peter Marwedel) Informatik 12 TU Dortmund Germany Springer, 2010 2014 年 11 月 12 日 These slides use Microsoft clip arts. Microsoft copyright restrictions apply.
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
MehrMemory Management Units in High-Performance Processors
Memory Management Units in High-Performance Processors Ausgewählte Themen in Hardwareentwurf und Optik Seminar Universität Mannheim LS Rechnerarchitektur - Prof. Dr. U. Brüning WS 2003/2004 Frank Lemke
MehrRO-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
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
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
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
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)
MehrTutorium 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
MehrRechnernetze und Organisation
Memory 1 Übersicht Motivation Speicherarten Register SRAM, DRAM Flash Speicherhierarchie Cache Virtueller Speicher 2 Motivation Speicher ist zentraler Bestandteil eines Computers neben Prozessor CPU Computer
MehrBetriebssystemtechnik
Betriebssystemtechnik Übung 2 - Den Speicher beseiten Daniel Danner Christian Dietrich Gabor Drescher May 19, 2015 Betriebssystemtechnik 1 13 Ziel dieser Übung Betriebssystemtechnik 2 13 Ziel dieser Übung
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
MehrTechnische Informatik 2 Speichersysteme, Teil 2
Technische Informatik 2 Speichersysteme, Teil 2 Prof. Dr. Miroslaw Malek Sommersemester 2009 www.informatik.hu-berlin.de/rok/ca Thema heute Virtueller Speicher Virtueller Seitenspeicher Seitenregister
MehrHauptspeicherverwaltung - Memory Management
Hauptspeicherverwaltung - Memory Management Operating Systems I SS21 Prof. H.D.Clausen - unisal 1 Speicherhierarchie Verarbeitung cache Sekundär- Speicher Primär- Speicher ALU SS21 Prof. H.D.Clausen -
Mehr(Prüfungs-)Aufgaben zum Thema Speicherverwaltung
(Prüfungs-)Aufgaben zum Thema Speicherverwaltung 1) Ein Betriebssystem mit virtueller Speicherverwaltung arbeite mit 32 Bit langen virtuellen Adressen einer Seitengröße von 4KB zweistufigem Paging, wobei
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 Dominik Schoenwetter Erlangen, 30. Juni 2014 Lehrstuhl für Informatik 3 (Rechnerarchitektur)
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
MehrBetriebssysteme 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
MehrRechnerorganisation. 1. Juni 201 KC Posch
.6.2 Rechnerorganisation. Juni 2 KC Posch .6.2 2 .6.2 Front Side Bus Accelerated Graphics Port 28 MHz Front Side Bus North Bridge RAM idge South Bri IDE USB PCI Bus 3 .6.2 Front Side Bus Front Side Bus
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
MehrHans-Georg Eßer, Hochschule München, Betriebssysteme I, SS Speicherverwaltung 1
Sep 19 14:20:18 amd64 sshd[20494]: Accepted rsa for esser from ::ffff:87.234.201.207 port 61557 Sep 19 14:27:41 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 20 01:00:01 amd64 /usr/sbin/cron[29278]: (root)
MehrGrundlagen von Caching-Mechanismen beim Zusammenspiel von Mikroprozessor und Betriebssystem. Klaus Kusche Dezember 2015
Grundlagen von Caching-Mechanismen beim Zusammenspiel von Mikroprozessor und Betriebssystem Klaus Kusche Dezember 2015 Inhalt Ziele & Voraussetzungen Grundidee & Beispiele von Caches Bedeutung effizienter
Mehr2. Ansatzpunkt: Reduktion der Penalty Early Restart und critical word first
2. Ansatzpunkt: Reduktion der Penalty 2.1. Early Restart und critical word first Beide Techniken basieren darauf, die Wartezeit der CPU auf das Mindestmaß zu beschränken. Early restart lädt den Block wie
Mehr5.5 Virtueller Speicher
5.5 Virtueller Speicher Wenn der reale Speicher sogar für einzelne Prozesse zu klein ist : Virtueller Speicher (virtual memory), ist beliebig groß, nimmt alle Prozesse auf, ist in gleichgroße Teile Seiten
Mehr(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
Mehrtechnische universität dortmund fakultät für informatik informatik 12 Speicherhierarchie Peter Marwedel Informatik /05/18
Speicherhierarchie Peter Marwedel Informatik 3/5/8 Kontext Prozessor Leitwerk Rechenwerk Speicherarchitektur Externe Kommunikation Interne Kommunikation, 3 - - Die Realität: Kosten/Mbyte und Zugriffszeiten
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
MehrUniversität Bielefeld Technische Fakultät AG Rechnernetze und verteilte Systeme. Vorlesung 4: Memory. Wintersemester 2001/2002. Peter B.
Universität Bielefeld Technische Fakultät AG Rechnernetze und verteilte Systeme Vorlesung 4: Memory Peter B. Ladkin Address Translation Die Adressen, die das CPU benutzt, sind nicht identisch mit den Adressen,
Mehr8. Swapping und Virtueller Speicher
8. Swapping und Virtueller Speicher Der physikalische Adreßraum wird weiter abgebildet auf Arbeitsspeicher und Plattenspeicher. Prozesse (deren benutzte Seiten) die nicht laufen (und bald nicht laufen)
MehrSpeicher- Management
- Management hierarchie Die Hauptcharakteristika von sind: Kosten Kapazitäten Zugriffszeiten Generell gilt: kürzere Zugriffszeiten bedingen höhere Kosten pro bit größere Kapazität bedingt geringere Kosten
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
MehrGrundlagen 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
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Übungen zu Grundlagen der Rechnerarchitektur und -organisation: Bonusaufgaben Übung 9 und Präsenzaufgaben Übung 10
Übungen zu Grundlagen der Rechnerarchitektur und -organisation: Bonusaufgaben Übung 9 und Präsenzaufgaben Übung 10 Dominik Schoenwetter Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität
MehrRechnerorganisation. Ü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
Mehr5.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,
MehrUse of the LPM (Load Program Memory)
Use of the LPM (Load Program Memory) Use of the LPM (Load Program Memory) Instruction with the AVR Assembler Load Constants from Program Memory Use of Lookup Tables The LPM instruction is included in the
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
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
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
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
MehrMicrocontroller Architectures and Examples
Microcontroller Architectures and Examples Thomas Basmer telefon: 0335 5625 334 fax: 0335 5625 671 e-mail: basmer [ at ] ihp-microelectronics.com web: Outline Microcontroller in general Introduction Main
MehrÜbung zu Grundlagen der Betriebssysteme. 13. Übung 22.01.2012
Übung zu Grundlagen der Betriebssysteme 13. Übung 22.01.2012 Aufgabe 1 Fragmentierung Erläutern Sie den Unterschied zwischen interner und externer Fragmentierung! Als interne Fragmentierung oder Verschnitt
MehrGrundlagen der Informatik III Wintersemester 2010/ Vorlesung Dr.-Ing. Wolfgang Heenes
Grundlagen der Informatik III Wintersemester 2010/2011 25. Vorlesung Dr.-Ing. Wolfgang Heenes int main() { printf("hello, world!"); return 0; } msg: main:.data.asciiz "Hello, world!".text.globl main la
MehrGregor Michalicek, Marcus Schüler. Multiprozessoren
Gregor Michalicek, Marcus Schüler Gregor Michalicek Marcus Schüler Gregor Michalicek, Marcus Schüler Vorteile gegenüber Singleprozessoren ¾ sind zuverlässiger. Einige Multiprozessorsysteme können trotz
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
MehrWunschvorstellung 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
Mehr4.2 Verbesserung der Leistungsfähigkeit von Caches
12 4.2 Verbesserung der Leistungsfähigkeit von Caches Peter Marwedel Informatik 12 TU Dortmund 2014/05/02 Cache-Performanz Bewertungsmaß für die Leistungsfähigkeit einer Speicherhierarchie: Mittlere Zugriffszeit
MehrRO-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
MehrBetriebssysteme K_Kap11B: Files, Filesysteme Datenstrukturen
Betriebssysteme K_Kap11B: Files, Filesysteme Datenstrukturen 1 Files als lineare Liste File angeordnet als verkette Liste von Blöcken Jeder Block enthält Zeiger zum Nachfolger Zeiger = Adresse des Blocks
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
MehrCA Übung 30.01.2006. Christian kann heute nicht kommen => ich bin heute da, Christian das nächste Mal wieder
CA Übung 30.01.2006 Hallo zusammen! Christian kann heute nicht kommen => ich bin heute da, Christian das nächste Mal wieder Adrian Schüpbach: scadrian@student.ethz.ch Christian Fischlin: cfischli@student.ethz.ch
MehrRechnerarchitektur und Betriebssysteme (CS201): Virtual Memory
Rechnerarchitektur und Betriebssysteme (CS2): Virtual Memory 19 November 23 Prof Dr Christian Tschudin Departement Mathematik und Informatik, Universität Basel Wiederholung / Diskussion 1 Was ist ein inode?
MehrRechnerarchitektur. Vorlesungsbegleitende Unterlagen. WS 2003/2004 Klaus Waldschmidt
Rechnerarchitektur Vorlesungsbegleitende Unterlagen WS 2003/2004 Klaus Waldschmidt Teil 15 Speicherhierarchie und s Seite 1 Speicherhierarchie: Der Speicherraum wird in einzelne Schichten unterteilt, die
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
MehrTechnische Informatik 1
Technische Informatik 1 7 Prozesse und Threads Lothar Thiele Computer Engineering and Networks Laboratory Betriebssystem 7 2 7 3 Betriebssystem Anwendung Anwendung Anwendung Systemaufruf (syscall) Betriebssystem
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
MehrRechnerstrukturen 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
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
Mehr3 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,.)
MehrOutline. Cell Broadband Engine. Application Areas. The Cell
Outline 21.March 2006 Benjamin Keck Why Cell?!? Application Areas Architectural Overview Programming Model Programming on the PPE C/C++ Intrinsics 1 2 The Cell Supercomputer on a chip Multi-Core Microprocessor
Mehr5.4 Segmentierung. Einfachstes Beispiel: 1 Code-Segment + 1 Datensegment. 0 codelength 0 datalength. bs-5.4 1
5.4 Segmentierung Adressraum besteht aus mehreren Segmenten (segments), die unabhängig voneinander manipulierbar sind. Segmentierungsstruktur ist festgelegt durch die Hardware den Adressumsetzer. Einfachstes
MehrRaytracing auf Desktop PCs Optimizing Cache Usage (Intel Corp.)
Raytracing auf Desktop PCs Optimizing Cache Usage (Intel Corp.) von Martin Stöcker Motivation Geschwindigkeit der Prozessoren verdoppelt sich alle 18 Monate (Moore s Law) Geschwindigkeit des Speichers
MehrProf. 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
MehrBetriebssysteme. Speicherverwaltung - Grundlegende Konzepte. Sommersemester 2014 Prof. Dr. Peter Mandl. Prof. Dr. Peter Mandl Seite 1.
Speicherverwaltung - Grundlegende Konzepte Sommersemester 2014 Prof. Dr. Peter Mandl Prof. Dr. Peter Mandl Seite 1 Gesamtüberblick 1. Einführung in 2. Betriebssystemarchitekturen und Betriebsarten 3. Interruptverarbeitung
MehrVorlesung 14 Speichersysteme (2)
D - CA - XIV - MH - 1 HUMBOLDT-UNIVERSITÄT ZU BERLIN INSTITUT FÜR INFORMATIK Vorlesung 14 Speichersysteme (2) Sommersemester 2003 Leitung: Prof. Dr. Miroslaw Malek D - CA - XIV - MH - 2 SPEICHERSYSTEME
MehrInhalt Teil 10 (Caches) aus 6. Speicherorganisation
Inhalt Teil 10 (Caches) aus 6. Speicherorganisation 1 6.2 Caches 6.2.1 Systemstrukturen 6.2.2 Laden des Cache 6.2.3 Cache-Strukturen Vollassoziativer Cache Direkt zuordnender Cache N-fach assoziativer
MehrCell Broadband Engine
Cell Broadband Engine 21.March 2006 Benjamin Keck Outline Why Cell?!? Application Areas Architectural Overview SPU Programming Model Programming on the PPE C/C++ Intrinsics The Cell Supercomputer on a
MehrTuning des Weblogic /Oracle Fusion Middleware 11g. Jan-Peter Timmermann Principal Consultant PITSS
Tuning des Weblogic /Oracle Fusion Middleware 11g Jan-Peter Timmermann Principal Consultant PITSS 1 Agenda Bei jeder Installation wiederkehrende Fragen WievielForms Server braucheich Agenda WievielRAM
MehrEchtzeit-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
MehrLinux Memory Management für MySQL
Linux Memory Management für MySQL SIG MySQL - Performance 13.03.2012 Marius Dorlöchter mdo@ordix.de www.ordix.de Vorstellung Marius Dorlöchter Consultant bei ORDIX seit 2006 Gruppe Systemintegration Betriebssysteme:
MehrEchtzeit-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
MehrTIn 1: Feedback Laboratories. Lecture 4 Data transfer. Question: What is the IP? Institut für Embedded Systems. Institut für Embedded Systems
Mitglied der Zürcher Fachhochschule TIn 1: Lecture 4 Data transfer Feedback Laboratories Question: What is the IP? Why do we NEED an IP? Lecture 3: Lernziele Moving data, the why s and wherefores Moving
MehrFreispeicherverwaltung
Freispeicherverwaltung Allgemeine Techniken und Anwendung unter Linux Martin Wahl, 17.11.03 Freispeicherverwaltung 1 Überblick Allgemeines Suchstrategien Verwaltungsstrategien externer / interner Verschnitt
MehrTitelmasterformat durch Klicken bearbeiten
Titelmasterformat durch Klicken Titelmasterformat durch Klicken Die neue HDS Panama Serie Enterprise Plattform für den gehobenen Mittelstand Andreas Kustura, Silvio Weber Kramer & Crew GmbH & Co. KG Titelmasterformat
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.
MehrSpeicher (1) zur Realisierung eines Rechnerspeichers benötigt man eine Materie mit physikalischen Eigenschaften, die
Speicher (1) Definition: Speichern ist die kurz- oder langfristige Änderung einer oder mehrerer physikalischer Eigenschaften einer Materie durch ein externes Ereignis. zur Realisierung eines Rechnerspeichers
MehrMulti-Port-Speichermanager für die Java-Plattform SHAP
Fakultät Informatik Institut für Technische Informatik, Professur für VLSI-Entwurfssysteme, Diagnostik und Architektur Multi-Port-Speichermanager für die Java-Plattform SHAP DASS 2008 Martin Zabel, Peter
MehrTechnische Informatik II Wintersemester 2002/03 Sommersemester 2001. Heiko Holtkamp Heiko@rvs.uni-bielefeld.de
Technische Informatik II Wintersemester 2002/03 Sommersemester 2001 Heiko Holtkamp Heiko@rvs.uni-bielefeld.de Speicher ist eine wichtige Ressource, die sorgfältig verwaltet werden muss. In der Vorlesung
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
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)
MehrBootvorgang 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
MehrRouting in WSN Exercise
Routing in WSN Exercise Thomas Basmer telefon: 0335 5625 334 fax: 0335 5625 671 e-mail: basmer [ at ] ihp-microelectronics.com web: Outline Routing in general Distance Vector Routing Link State Routing
MehrKonzepte 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