3. Vorlesung Betriebssysteme



Ähnliche Dokumente
4.Vorlesung Grundlagen der Informatik

3.Vorlesung Systemsoftware (SYS) Hochschule Mannheim

Betriebssysteme (BTS)

1 Aufgaben zu Wie funktioniert ein Computer?

Lösung von Übungsblatt 3

Teil VIII Von Neumann Rechner 1

Lösung von Übungsblatt 2

Lösung von Übungsblatt 2

Rechner Architektur. Martin Gülck

3. Foliensatz Betriebssysteme

Ein kleines Computer-Lexikon

Tutorium Rechnerorganisation

Staatlich geprüfter EDV-Führerschein

Betriebssysteme. Dipl.-Ing.(FH) Volker Schepper

Mikrocontroller Grundlagen. Markus Koch April 2011

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom b

Eigene Dokumente, Fotos, Bilder etc. sichern

1. Übung - Einführung/Rechnerarchitektur

Die Komponenten in Ihrem Computer

Konzepte von Betriebssystemkomponenten Disk-Caches und Dateizugriff

20. Algorithmus der Woche Online-Algorithmen: Was ist es wert, die Zukunft zu kennen? Das Ski-Problem

Computergruppe Heimerdingen Basiskurs. Karlheinz Wanja & Richard Zeitler

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

Die Mikroprogrammebene eines Rechners

Rechnernetzwerke. Rechnernetze sind Verbünde von einzelnen Computern, die Daten auf elektronischem Weg miteinander austauschen können.

Kompetitive Analysen von Online-Algorithmen

3 ORDNER UND DATEIEN. 3.1 Ordner

CPU Speicher I/O. Abbildung 11.1: Kommunikation über Busse

Einführung in Speichersysteme

Halbleiterspeicher. Halbleiterspeicher Michael Kuhfahl 1

(Cache-Schreibstrategien)

OPERATIONEN AUF EINER DATENBANK

GFAhnen Datensicherung und Datenaustausch

2.2 Rechnerorganisation: Aufbau und Funktionsweise

ZENTRALEINHEITEN GRUPPE

Zukünftige Speichertechnologien - HVD, Racetrack und mehr -

Systemsoftware (SYS) Fakultät für Informatik WS 2008/2009 Christian Baun. Übungsklausur

Inhalte der heutigen Vorlesung

EasyWk DAS Schwimmwettkampfprogramm

Microcontroller Kurs Microcontroller Kurs/Johannes Fuchs 1

Allgemein: Das Mainboard

Mikroprozessor als universeller digitaler Baustein

Anleitung zur Nutzung des SharePort Utility

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

Facharbeit Informatik. Thema:

PC-Umzug: So ziehen Sie Ihre Daten von Windows XP nach Windows 8 um

Nichttechnische Speicherung

Computeria Urdorf. Treff vom 16. Januar Was ist ein Computer?

Von Bits, Bytes und Raid

Anleitung zur Nutzung des SharePort Plus

Einführung in die technische Informatik

Virtueller Speicher. SS 2012 Grundlagen der Rechnerarchitektur Speicher 44

4D Server v12 64-bit Version BETA VERSION

Professionelle Seminare im Bereich MS-Office

Updatehinweise für die Version forma 5.5.5

SJ OFFICE - Update 3.0

Einrichtung des Cisco VPN Clients (IPSEC) in Windows7

Computer - Aufbau u. Funktionsweise

Systeme 1. Kapitel 6. Nebenläufigkeit und wechselseitiger Ausschluss

mywms Vorlage Seite 1/5 mywms Datenhaltung von Haug Bürger

Im Original veränderbare Word-Dateien

Felix Großkreuz Philipps-Universität Marburg Fachbereich 12 Seminar IT-Administration SS2011

Handbuch ECDL 2003 Modul 2: Computermanagement und Dateiverwaltung Grundbegriffe: Speichereinheiten, Ordnerstruktur und Dateitypen

Lösungsskizzen zur Abschlussklausur Betriebssysteme

Wenn keine Verbindung zwischen den Computern besteht, dann bist du offline.

Datensicherung. Beschreibung der Datensicherung

Kap 4. 4 Die Mikroprogrammebene eines Rechners

backupmyfilestousb ==> Datensicherung auf USB Festplatte

Inhalt. 1 Einleitung AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER

Fachbereich Medienproduktion

Synchronisierung. Kommunikationstechnik, SS 08, Prof. Dr. Stefan Brunthaler 73

Stellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster

Programmieren I. Kapitel 15. Ein und Ausgabe

Festigkeit von FDM-3D-Druckteilen

Bilder zum Upload verkleinern

5 Speicherverwaltung. bs-5.1 1

Betriebssysteme (BTS)

Installationsvoraussetzungen

Handbuch B4000+ Preset Manager

Lizenzierung von SharePoint Server 2013

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

Datenträger. Rudolf Schleinzer IKT (Informations- und Kommunikationstechnologie) Skriptum: Datenträger

Verwendung des Terminalservers der MUG

Lizenzierung von SharePoint Server 2013

Wie man Registrationen und Styles von Style/Registration Floppy Disketten auf die TYROS-Festplatte kopieren kann.

In 15 Schritten zum mobilen PC mit Paragon Drive Copy 11 und VMware Player

ARAkoll 2013 Dokumentation. Datum:

Windows Server 2008 (R2): Anwendungsplattform

Daten, Dateien, Datenspeicher

Zahlensysteme: Oktal- und Hexadezimalsystem

Die Lernumgebung des Projekts Informationskompetenz

mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank

2. Negative Dualzahlen darstellen

5. PC-Architekturen und Bussysteme

Kurzanleitung Verwendung von USB-Sticks

SICHERUNG AUSWERTBARER DATEN AUS OTAS-KASSENSYSTEMEN

Zuschauer beim Berlin-Marathon

Telefonmodem ISDN DSL VDSL. Telekom 1&1 Telefónica/O2. Vodafone Unitymedia HSE Medianet

Outlook-Daten komplett sichern

Spezifikationen für die Datenträgerlöschung mit GDisk

Transkript:

Dr. Christian Baun 3. Vorlesung Betriebssysteme Hochschule Mannheim WS1213 1/38 3. Vorlesung Betriebssysteme Dr. Christian Baun Hochschule Mannheim Fakultät für Informatik wolkenrechnen@gmail.com

Dr. Christian Baun 3. Vorlesung Betriebssysteme Hochschule Mannheim WS1213 2/38 Heute Rechnerarchitektur Von-Neumann-Architektur Hardware-Komponenten eines Computers Hauptprozessor (CPU) Busleitungen Speicher Speicherpyramide Primär-/Sekundär-/Tertiärspeicher Arbeitsweise der Speicherhierarchie Cache-Schreibstrategien (Write-Back und Write-Through) Lokalitätsausnutzung (zeitliche und räumliche Lokalität) Cache-Anfragen (Cache-Hit und Cache-Miss) Ersetzungsstrategien

Dr. Christian Baun 3. Vorlesung Betriebssysteme Hochschule Mannheim WS1213 3/38 Von-Neumann-Architektur Idee und Aufbau des Universalrechners, der nicht an ein festes Programm gebunden ist und über Ein-/Ausgabegeräte verfügt Entwickelt 1946 von John von Neumann Nach ihm benannt ist die Von-Neumann-Architektur, bzw. der Von-Neumann-Rechner Im Von-Neumann-Rechner werden Daten und Programme binär kodiert und liegen im gleichen Speicher Wesentliche Ideen der Von-Neumann-Architektur wurden bereits 1936 von Konrad Zuse ausgearbeitet und 1937 in der Zuse Z1 realisiert Von Neumanns Verdienste sind: Er hat sich als erster wissenschaftlich, mathematisch mit der Konstruktion von Rechenmaschinen beschäftigt Urheberschaft am sequentiellen Prinzip (Von-Neumann-Zyklus)

Der Hauptprozessor Die CPU Der Hauptprozessor ist das Herzstück moderner Computersysteme Hauptprozessor = Central Processing Unit (CPU) Die meisten Komponenten eines Computers sind passiv und werden durch die CPU gesteuert Programme sind Folgen von Maschineninstruktionen, die in aufeinander folgenden Speicheradressen abgelegt sind Bei der Programmausführung setzt die CPU die Maschineninstruktionen Schritt für Schritt um Eine CPU besteht aus mindestens drei Komponenten: Rechenwerk Steuerwerk Registersatz Dr. Christian Baun 3. Vorlesung Betriebssysteme Hochschule Mannheim WS1213 4/38

Registersatz (Daten- und Spezialregister) Speicherzellen (Register) für die kurzfristige Speicherung von Operanden und Adressen Register arbeiten mir der selben Geschwindigkeit, wie der Rest der CPU Dr. Christian Baun 3. Vorlesung Betriebssysteme Hochschule Mannheim WS1213 5/38 Komponenten der CPU Steuerwerk bzw. Leitwerk bzw. Befehlswerk (Control Unit) Interpretiert Befehle, koordiniert der anderen CPU-Komponenten, steuert die Ein-/Ausgabe-Einheiten und den Steuerbus Enthält das Befehlsregister (Instruction Table), das alle Befehle enthält, die die CPU ausführen kann Rechenwerk bzw. Arithmetic Logic Unit (ALU) Manipulation von Daten und Adressen Führt alle logischen und mathematischen Operationen aus

Dr. Christian Baun 3. Vorlesung Betriebssysteme Hochschule Mannheim WS1213 6/38 Von-Neumann-Zyklus des Von-Neumann-Rechners Sequentielle Arbeitsweise mit 5 Phasen (Von-Neumann-Zyklus) Jede Phase kann mehrere Takte in Anspruch nehmen Prozessor und Speicher kommunizieren über einen Bus direkt Befehle und Daten werden über diesen Bus transportiert 1 FETCH: Abzuarbeitenden Befehl aus dem Speicher in das Befehls-Register der CPU laden 2 DECODE: Steuerwerk löst den Befehl in Schaltinstruktionen für das Rechenwerk auf 3 FETCH OPERANDS: Parameter (Operanden) für den Befehl aus dem Speicher holen 4 EXECUTE: Rechenwerk führt die Operation aus 5 UPDATE INSTRUCTION POINTER: Befehlszähler wird erhöht. Zyklus beginnt von vorne und der nächste Befehl wird ausgeführt Auch heute folgen die meisten gängigen Mikroprozessoren und Rechnersysteme dem Von-Neumann-Prinzip (Ausnahme: Bus)

Dr. Christian Baun 3. Vorlesung Betriebssysteme Hochschule Mannheim WS1213 7/38 Die Busleitungen Die Komponenten eines modernen Rechnersystems sind durch drei digitale Busse verbunden: Steuerbus, Adressbus und Datenbus Steuerbus, Adressbus und Datenbus zusammen sind der Systembus oder Front Side Bus (FSB)

Dr. Christian Baun 3. Vorlesung Betriebssysteme Hochschule Mannheim WS1213 8/38 Die Busleitungen Datenbus Über den bidirektionalen Datenbus werden Daten zwischen Prozessor, Arbeitsspeicher und Peripherie übertragen Anzahl der Datenbusleitungen legt fest, wie viele Bytes pro Takt übertragen werden können Üblicherweise ist die Bandbreite (Anzahl der Datenbusleitungen) des Datenbusses gleich der Größe der Arbeitsregister des Prozessors Moderne Prozessoren verfügen über eine Datenbusbreite von 64 Bits Der Prozessor kann somit 64 Datenbits gleichzeitig (innerhalb eines Taktes) an und vom Arbeitsspeicher weg übertragen Die Datenfreigabe (Berechtigung zum Senden von Daten) erfolgt durch den Prozessor jeweils nur für eine Komponente

Die Busleitungen Adressbus Der unidirektionale Adressbus ist nur für die Übertragung von Speicheradressen zuständig Es werden nicht nur die einzelnen Speicherzellen über den Adressbus angesprochen (adressiert), sondern auch Peripherie-Geräte Die Breite des Adressbusses (Anzahl der digitalen Signalleitungen) legt die maximale Anzahl der adressierbaren Speicherzellen fest Hat der Adressbus eine Busbreite von 32 Bits bedeutet das, das 2 32 Speicherzellen, also ca. 4 Gigabyte Arbeitsspeicher adressierbar sind Formel zur Ermittlung der maximal nutzbaren Speichergröße, die ein Prozessor ansprechen kann (in Byte): Maximal adressierbare Speicherplätze = 2 Anzahl der Signalleitungen Dr. Christian Baun 3. Vorlesung Betriebssysteme Hochschule Mannheim WS1213 9/38

Dr. Christian Baun 3. Vorlesung Betriebssysteme Hochschule Mannheim WS1213 10/38 Adressbus- und Datenbusbreite einiger Prozessoren Prozessor Adressbus max. adressierbar Datenbus 4004, 4040 4 Bits 2 4 = 16 Bytes 4 Bits 8008, 8080 8 Bits 2 8 = 256 Bytes 8 Bits 8085 16 Bits 2 16 = 65 kb 8 Bits 8088 20 Bits 2 20 = 1 MB 8 Bits 8086 (XT) 20 Bits 2 20 = 1 MB 16 Bits 80286 (AT) 24 Bits 2 24 = 16 MB 16 Bits 80386SX 32 Bits 2 32 = 4 GB 16 Bits 80386DX, 80468SX/DX/DX2/DX4 32 Bits 2 32 = 4 GB 32 Bits Pentium I/MMX/II/III/IV/D/M, Celeron, 32 Bits 2 32 = 4 GB 64 Bits Core Solo/Duo, Core 2 Duo, Core 2 Extrem Pentium Pro, Pentium Dual-Core, 36 Bits 2 36 = 64 GB 64 Bits Core 2 Quad, Core i7 Itanium 44 Bits 2 44 = 17 TB 64 Bits AMD Phenom-II 48 Bits 2 48 = 281 TB 64 Bits Itanium 2, AMD64 64 Bits 2 64 = 16 Etabyte 64 Bits Beim Pentium Pro können durch Physical Address Extension (PAE) mehr als 4 GB Arbeitsspeicher adressiert werden PAE ist eine Erweiterung in der Paging-Einheit Der pro Prozess nutzbare Arbeitsspeicher ist jedoch weiterhin auf 4 GB begrenzt

Dr. Christian Baun 3. Vorlesung Betriebssysteme Hochschule Mannheim WS1213 11/38 Die Busleitungen Steuerbus Der bidirektionale Steuerbus koordiniert exklusive Lese- und Schreibanweisungen auf den Daten- und Adressbus und damit zwischen den Komponenten des Computersystems Eine über den Adressbus angesprochene Komponente, wird über den Steuerbus angewiesen, was sie zu tun hat Der Steuerbus beinhaltet auch die Interrupt-Leitungen Über diese können Peripherie-Geräte dem Prozessor eine Unterbrechungsanforderung signalisieren Typische Bandbreiten beim Steuerbus: 5-10 Leitungen

Dr. Christian Baun 3. Vorlesung Betriebssysteme Hochschule Mannheim WS1213 12/38 Busse in modernen Rechersystemen Die verbindende Element ist die PCI-Bridge (der sog. Chipsatz) Besteht aus 2 Komponenten: Northbridge liegt dicht an der CPU, um Daten schnell übertragen zu können. Zuständig für Speicherzugriffe und Grafikkarte Southbridge ist für langsamere Verbindungen wie PCI, ISA, SATA, USB, Firewire, usw. zuständig

Front-Side-Bus und ausgewählte Bussysteme Front-Side-Bus (FSB) ist der Bus zwischen CPU und Chipsatz und enthält Adressbus, Datenbus und Steuerbus Aus Geschwindigkeitsgründen verlagert man immer mehr Bestandteile des Chipsatzes in den Prozessor In modernen Architekturen gibt es den klassischen Systembus nicht mehr Geräte werden wegen der unterschiedlichen technologischen Realisierungen der Geräte nicht mehr direkt mit dem Prozessor verbunden Rechnersysteme enthalten heute verschiedenen seriellen und parallele Bussysteme, die für die jeweilige Erfordernisse ausgelegt sind Es werden auch immer häufiger Punkt-zu-Punkt-Verbindungen eingesetzt Eingabe-/Ausgabecontroller treten als Vermittler zwischen den Geräten und dem Prozessor auf Einige ausgewählte Bussysteme: Parallele, Rechner-interne Busse: PATA (IDE), PCI, ISA, SCSI,... Serielle, Rechner-interne Busse: SATA, PCI-Express... Parallele, Rechner-externe Busse: PCMCIA, SCSI... Serielle, Rechner-externe Busse: Ethernet, FireWire, USB, esata... Dr. Christian Baun 3. Vorlesung Betriebssysteme Hochschule Mannheim WS1213 13/38

Dr. Christian Baun 3. Vorlesung Betriebssysteme Hochschule Mannheim WS1213 14/38 Verlagerung des Speichercontrollers in die CPU

Dr. Christian Baun 3. Vorlesung Betriebssysteme Hochschule Mannheim WS1213 15/38 Speicher Speicher nimmt Daten und die auszuführenden Programme auf Speicher bildet durch Busse verbunden eine Hierarchie = Speicherpyramide Grund für die Speicher-Hierarchie: Preis/Leistungsverhältnis = Je schneller ein Speicher ist, desto teurer und knapper ist er Welche digitalen Datenspeicher kennen Sie?

Digitale Datenspeicher Speicher Speicherung Lesevorgang Zugriff Bewegliche Persistent Teile Lochstreifen mechanisch seqentiell ja ja Lochkarte mechanisch seqentiell ja ja Magnetband magnetisch seqentiell ja ja Magnetkarte magnetisch seqentiell ja ja Magnetstreifen magnetisch seqentiell ja ja Trommelspeicher (Drum Memory) magnetisch wahlfrei ja ja Kernspeicher magnetisch wahlfrei nein ja Magnetblasenspeicher (Bubble Memory) magnetisch wahlfrei nein ja Hauptspeicher (DRAM) elektronisch wahlfrei nein nein Compact Cassette (Datasette) magnetisch seqentiell ja ja Diskette (Floppy Disk) magnetisch wahlfrei ja ja Festplatte (Hard Disk) magnetisch wahlfrei ja ja Magneto Optical Disc (MO-Disk) magneto-optisch optisch wahlfrei ja ja CD-ROM/DVD-ROM mechanisch optisch wahlfrei ja ja CD-R/CD-RW/DVD-R/DVD-R optisch wahlfrei ja ja MiniDisc magneto-optisch optisch wahlfrei ja ja Flashspeicher (USB-Stick, SSD, CF-Karte) elektronisch wahlfrei nein ja Wahlfreier Zugriff heißt, dass das Medium nicht wie z.b. bei Bandlaufwerken von Beginn an sequentiell durchsucht werden muss, um eine bestimmte Stelle (Datei) zu finden Die Köpfe von Magnetplatten oder ein Laser können in einer bekannten maximalen Zeit zu jedem Punkt des Mediums springen Dr. Christian Baun 3. Vorlesung Betriebssysteme Hochschule Mannheim WS1213 16/38

Mechanische Datenspeicher Jede Lochkarte stellt üblicherweise eine Zeile Programmtext mit 80 Zeichen oder entsprechend viele binäre Daten dar Der dargestellte Lochstreifen hat 8 Datenspalten eine eine kleinere Transportlochung Man kann damit 1 Byte pro Zeile speichern Die Datenspeicherung auf CDs/DVDs erfolgt mit Pits (Gruben) und Lands (Flächen), die auf einem Kunststoff aufgebracht sind Die Herstellung von CDs/DVDs nennt man pressen und erfolgt via Spritzgussverfahren mit einem Negativ (Stamper) Bildquelle: Google Bildersuche, Wikipedia und http://www.datentraeger-museum.de Dr. Christian Baun 3. Vorlesung Betriebssysteme Hochschule Mannheim WS1213 17/38

Magnetische Datenspeicher Die Speicherung der Informationen erfolgt auf magnetisierbarem Material Die Datenträger werden mit einem Lese-Schreib-Kopf gelesen und beschrieben Ausnahme: Kernspeicher Der Lese-Schreib-Kopf kann beweglich (z.b. bei Festplatten) oder feststehend (z.b. bei Magnetbändern) sein Rotierende Datenspeicher: Festplatte Trommelspeicher Diskette Nichtrotierende Datenspeicher: Kernspeicher Magnetband Magnetstreifen Magnetkarte Compact Cassette (Datasette) Magnetblasenspeicher Dr. Christian Baun 3. Vorlesung Betriebssysteme Hochschule Mannheim WS1213 18/38

Dr. Christian Baun 3. Vorlesung Betriebssysteme Hochschule Mannheim WS1213 19/38 Magneto-optische Datenspeicher Rotierendes Speichermedium Wird magnetisch beschrieben und optisch ausgelesen Der Datenträger ist nicht bei Raumtemperatur, sondern erst oberhalb der Curie-Temperatur magnetisierbar Der Datenträger muss erhitzt werden, damit er magnetisierbar ist Das Erhitzen erfolgt via Laserstrahl Bildquelle: tomshardware.com Der Datenträger ist unempfindlich gegen Magnetfelder und die Magnetisierung bleibt mehrere Jahrzehnte erhalten Die unterschiedlich magnetisierten Bereiche reflektieren Licht unterschiedlich Das Auslesen kann somit ebenfalls optisch via Laserstrahl erfolgen

Dr. Christian Baun 3. Vorlesung Betriebssysteme Hochschule Mannheim WS1213 20/38 Elektronischer Datenspeicher Flüchtiger (volatiler Speicher) Random Access Memory (RAM) Static random-access memory (SRAM) Die Informationen können beim Anliegen der Betriebsspannung beliebig lange gespeichert werden Dynamic Random Access Memory (DRAM) Die Informationen sind in Kondensatoren gespeichert Benötigt ein periodisches Auffrischen der Informationen denn gespeicherte Informationen gehen bei fehlender Betriebsspannung oder zu später Wiederauffrischung wegen der Leckströme verloren Nichtflüchtiges Speicher (englisch: non-volatile) Read-only Memory (ROM) Ultra-Violet Erasable Programmable ROM (UV-EPROM) Electrically Erasable Programmable ROM (EEPROM)... Flash-Speicher (= Flash-Speicher ist Teil des nächsten Foliensatzes)

Dr. Christian Baun 3. Vorlesung Betriebssysteme Hochschule Mannheim WS1213 21/38 Die Speicherpyramide Primärspeicher: Darauf kann der Prozessor direkt zugreifen Sekundärspeicher: Hintergrundspeicher, der über einen Controller angesprochen wird Tertiärspeicher: Nicht dauerhaft verfügbar, oder über ein Laufwerk mit dem Rechner verbunden. Hauptaufgabe ist Archivierung

Dr. Christian Baun 3. Vorlesung Betriebssysteme Hochschule Mannheim WS1213 22/38 Primär-/Sekundär-/Tertiärspeicher Primärspeicher und Sekundärspeicher sind Onlinespeicher, da sie eine feste Verbindung zum Computer und dadurch geringe Zugriffszeiten auf die Daten haben Tertiärspeicher wird unterschieden in: Nearlinespeicher: Werden automatisch und ohne menschliches Zutun dem System bereitgestellt (z.b. Band-Library) Offlinespeicher: Medien werden in Schränken oder Lagerräumen aufbewahrt und müssen von Hand in das System integriert werden Streng genommen sind Wechselfestplatten (Sekundärspeicher) auch Offlinespeicher

Dr. Christian Baun 3. Vorlesung Betriebssysteme Hochschule Mannheim WS1213 23/38 Arbeitsweise der Speicherhierarchie Beim ersten Zugriff auf ein Datenelement, wird eine Kopie erzeugt, die entlang der Speicherhierarchie nach oben wandert Wird das Datenelement verändert, müssen die Änderungen irgendwann nach unten durchgereicht (zurückgeschrieben) werden Beim zurückschreiben, müssen die Kopien des Datenblocks auf allen Ebenen aktualisiert werden, um Inkonsistenzen zu vermeiden Änderungen können nicht direkt auf die unterste Ebene (zum Original) durchgereicht werden!

Dr. Christian Baun 3. Vorlesung Betriebssysteme Hochschule Mannheim WS1213 24/38 Cache-Schreibstrategien Für Schreibzugriffe auf den Cache gibt es zwei Möglichkeiten 1 Write-Back Schreibzugriffe werden nicht direkt an die tieferen Speicherebene weitergegeben Dadurch kommt es zu Inkonsistenzen zwischen den Daten im Cache und auf dem zu cachenden Speicher Die Daten werden erst zurückgeschrieben, wenn der betreffende Datenblock aus dem Cache verdrängt wird = Zurückschreiben Vorteil: Höhere Systemgeschwindigkeit Nachteil: Daten können beim Systemausfall verloren gehen 2 Write-Through Schreibzugriffe werden sofort an die tieferen Speicherebenen weitergegeben = Durchschreiben Vorteil: Datenkonsistenz ist gesichert Nachteil: Geringere Systemgeschwindigkeit

Dr. Christian Baun 3. Vorlesung Betriebssysteme Hochschule Mannheim WS1213 25/38 Register, Cache und Hauptspeicher (1) Register in der CPU enthalten die Daten, auf die die CPU sofort zugreifen kann und sind genauso schnell getaktet wie die CPU selbst Kapazität der Register: In der Regel 1 kb Die Entscheidung, was in den Registern gespeichert wird, fällen die laufenden Programme Cache (Pufferspeicher) enthält Kopien von Teilen des Arbeitsspeichers um den Zugriff auf diese Daten zu beschleunigen Der Cache ist oft in 2 oder 3 Ebenen verteilt Erste Ebene (First Level Cache) ist der CPU am nächsten platziert und in die CPU-Architektur integriert Zweite Ebene (Second Level Cache) ist langsamer und größer und befindet sich außerhalb der CPU (auf dem Mainboard) Die Entwicklung geht dahin, dass immer häufiger der Second Level Cache in die CPU-Architektur integriert wird, was zur Umbenennung des externen Cache in Third Level Cache führte

Dr. Christian Baun 3. Vorlesung Betriebssysteme Hochschule Mannheim WS1213 26/38 Register, Cache und Hauptspeicher (2) Typische Kapazitäten der Cache-Ebenen: First Level Cache: 4 kb bis 256 kb Second Level Cache: 256 kb bis 4 MB Third Level Cache: 1 MB bis 16 MB Der Hauptspeicher, auch Arbeitsspeicher oder RAM (Random Access Memory = Speicher mit wahlfreiem Zugriff) hat aktuell Größen von wenigen hundert MB bis mehreren GB Alle Anfragen der CPU, die nicht vom Cache beantwortet werden können, werden an den Hauptspeicher weitergeleitet RAM und ROM Im Gegensatz zum flüchtigen Lese- und Schreibspeicher RAM ist ein ROM (Read Only Memory) ein nicht-flüchtiger Lesespeicher. Ein solcher Speicher kann nur ausgelesen, aber nicht beschrieben werden

Dr. Christian Baun 3. Vorlesung Betriebssysteme Hochschule Mannheim WS1213 27/38 Lokalitätsausnutzung Cache ist schneller, teurer und knapper Speicher Cache kann nie alle Daten gleichzeitig vorrätig gespeichert haben Die Entscheidung, welche Daten im Cache gehalten werden, ist von den Lokalitätseigenschaften der Zugriffe abhängig: Zeitliche Lokalität: Bei Schleifen z.b. ist es wahrscheinlich, dass sich Zugriffe auf Daten mehrmals wiederholen. Diese Daten sollten also bevorzugt im Cache gehalten werden. Ältere Daten müssen aus Platzgründen aus dem Cache verdrängt werden = Verdrängung Räumliche Lokalität: Wahrscheinlichkeit, dass Daten in benachbarten Adressbereichen zusammengehören ist hoch. Wegen der räumlichen Lokalität speichert man bei Caches nicht einzelne Bytes sondern die Daten ganzer Adressbereiche = Cache-Block (starker Einfluss auf die Systemleistung!)

Dr. Christian Baun 3. Vorlesung Betriebssysteme Hochschule Mannheim WS1213 28/38 Cache-Hit und Cache-Miss Bei einer Daten-Anfrage an den Cache sind zwei Ergebnisse möglich Cache-Hit: Angefragte Daten sind vorhanden (Treffer) Cache-Miss: Angefragte Daten sind nicht vorhanden (verfehlt) Zwei Kennzahlen bewerten die Effizienz eines Cache Hitrate: Anzahl der Anfragen an den Cache mit Ergebnis Cache-Hit, geteilt durch die Gesamtanzahl der Anfragen Ergebnis liegt zwischen Null und Eins Je höher der Wert, desto höher ist die Effizienz des Caches Missrate: Anzahl der Anfragen an den Cache mit Ergebnis Cache-Miss, geteilt durch die Gesamtanzahl der Anfragen Missrate = 1 Hitrate

Dr. Christian Baun 3. Vorlesung Betriebssysteme Hochschule Mannheim WS1213 29/38 Grundlagen zum Speicher und Speicherverwaltung Bislang haben wir bzgl. Speicher geklärt: Speicher nimmt Daten und die auszuführenden Programme auf Speicher bildet eine Hierarchie (= Speicherpyramide) Grund für die Speicher-Hierarchie: Preis/Leistungsverhältnis Je schneller ein Speicher ist, desto teurer und knapper ist er Beim ersten Zugriff auf ein Datenelement, wird eine Kopie erzeugt, die entlang der Speicherhierarchie nach oben wandert Da die obersten Speicherebenen praktisch immer voll belegt sind, müssen Daten verdrängt werden, um Platz zu schaffen Wird ein Datenelement im Speicher verändert, müssen die Änderungen nach unten durchgereicht (zurückgeschrieben) werden Es ist zu klären: Wie wird der Speicher angesprochen? Wie funktioniert Speicherverwaltung (Scheduling und Swapping)?

Dr. Christian Baun 3. Vorlesung Betriebssysteme Hochschule Mannheim WS1213 30/38 Datenverwaltung Ersetzungsstrategien Es ist sinnvoll, immer nur die Datenblöcke (Seiten) im Speicher zu halten, auf die häufig zugegriffen wird Einige wichtige Ersetzungsstrategien: OPT (Optimale Strategie) LRU (Least Recently Used) LFU (Least Frequently Used) FIFO (First In First Out) Clock Climb TTL (Time To Live) Random WS (Working Set)

Dr. Christian Baun 3. Vorlesung Betriebssysteme Hochschule Mannheim WS1213 31/38 Optimale Strategie (OPT) Verdrängt den Datenblock, der am längsten nicht gebraucht, also auf den am längsten in der Zukunft nicht zugegriffen wird Der komplette Programmablauf, also die zukünftige Verwendung der Datenblöcke im Speicher, muss im voraus bekannt sein Das ist leider utopisch und nicht zu implementieren! Niemand kann in die Zukunft sehen Darum müssen wir die Vergangenheit berücksichtigen Die Strategie hat ihre Berechtigung, um die Effizienz anderer Ersetzungsstrategien mit ihr zu vergleichen

Dr. Christian Baun 3. Vorlesung Betriebssysteme Hochschule Mannheim WS1213 32/38 Least Recently Used (LRU) Verdrängt den Datenblock, auf den am längsten nicht mehr zugegriffen wurde Alle Datenblöcke werden in einer Warteschlange eingereiht Ist der Speicher voll und es kommt zum Cache-Miss, wird der Datenblock am Ende der Warteschlange ausgelagert Wird ein Datenblock in den Speicher geschrieben oder referenziert, wird er am Anfang der Warteschlange eingereiht Vorteil: Liefert gute Resultate und verursacht wenig Overhead Nachteil: Zugriffshäufigkeit wird nicht berücksichtigt

Dr. Christian Baun 3. Vorlesung Betriebssysteme Hochschule Mannheim WS1213 33/38 Least Frequently Used (LFU) Verdrängt den Datenblock, auf den am wenigsten zugegriffen wurde Für jeden Datenblock im Speicher wird in der Seitentabelle ein Referenzzähler geführt, der die Anzahl der Zugriffe speichert Jeder Zugriff erhöht den Referenzzähler Ist der Speicher voll und kommt es zum Cache-Miss, wird der Datenblock entfernt, dessen Referenzzähler den niedrigsten Wert hat Vorteil: Berücksichtigt die Zugriffshäufigkeit Nachteil: Datenblöcke, auf die in der Vergangenheit häufig zugegriffen wurde, können den Speicher blockieren

Dr. Christian Baun 3. Vorlesung Betriebssysteme Hochschule Mannheim WS1213 34/38 First In First Out (FIFO) Verdrängt den Datenblock, der sich am längsten im Speicher befindet Problem: Nur weil auf einen Datenblock länger nicht mehr zugegriffen wurde, heißt das nicht, dass er nicht in naher Zukunft verwendet wird Laszlo Belady zeigte 1969, dass unter ungünstigen Umständen FIFO bei einem größeren Speicher zu mehr Zugriffsfehlern (Miss) führt, als bei einem kleinen Speicher (= Belady s Anomalie) Ursprünglich ging man davon aus, dass eine Vergrößerung des Speichers zu weniger oder schlechtestenfalls gleich vielen Zugriffsfehlern führt Bis zur Entdeckung von Belady s Anomalie galt FIFO als gute Ersetzungsstrategie

Dr. Christian Baun 3. Vorlesung Betriebssysteme Hochschule Mannheim WS1213 35/38 Belady s Anomalie (1969)

Dr. Christian Baun 3. Vorlesung Betriebssysteme Hochschule Mannheim WS1213 36/38 Clock Für jeden Datenblock wird in der Seitentabelle ein Referenzbit geführt Wird ein Datenblock geladen = Referenzbit = 0 Wird auf einen Datenblock zugegriffen = Referenzbit = 1 Ein Markierungsbit zeigt auf den zuletzt zugegriffen Datenblock Beim Miss wird der Speicher ab dem Markierungsbit nach dem ersten Datenblock durchsucht, dessen Referenzbit den Wert 0 hat Dieser Datenblock wird ersetzt Bei allen bei der Suche durchgesehenen Datenblöcken, bei denen das Referenzbit den Wert 1 hat, wird das Referenzbit auf 0 gesetzt

Dr. Christian Baun 3. Vorlesung Betriebssysteme Hochschule Mannheim WS1213 37/38 Climb Datenblöcke werden immer hinten an den Speicher angehängt Beim Zugriff auf einen Datenblock, steigt dieser eine Ebene nach oben Beim Miss wird der letzte Datenblock verdrängt Es ist kein Zähler wie bei LFU (Least Frequently Used) nötig Dafür sind Kopiervorgänge nötig

Dr. Christian Baun 3. Vorlesung Betriebssysteme Hochschule Mannheim WS1213 38/38 Weitere Ersetzungsstrategien TTL (Time To Live): Jedem Datenblock wird bei der Erzeugung eine Lebenszeit zugeordnet Ist die TTL überschritten, kann der Datenblock aus dem Speicher verdrängt werden Random: Zufälliger Datenblock wird aus dem Speicher verdrängt WS (Working Set): Alle Datenblöcke, die in einem bestimmten Zeitfenster von einem Prozess verwendet wurden, das sogenannte Working Set, werden verdrängt