Realisierung eines Dateisystems. Blockzuordnung bei Magnetplatten

Größe: px
Ab Seite anzeigen:

Download "Realisierung eines Dateisystems. Blockzuordnung bei Magnetplatten"

Transkript

1 Übersicht 0 Aufbau des Speichersystems Dateien und Blöcke Realisierung eines Dateisystems Blockzuordnung bei Magnetplatten Kontrolle der E/A Operationen Segmente und Seiten Aufgaben und Eigenschaften Seitenabbildung Einbringstrategien für Änderung Übersicht 0

2 Vereinfachtes Modell einer zweistufigen Speicherhierarchie 1 Vereinfachtes Modell einer zweistufigen Speicherhierarchie 1

3 Abbildung von Dateien und Blöcken 2 Anforderungen: (a) Verwaltung externer Speichermedien, (b) Verbergen von Geräteeigenschaften, (c) Abbildung von physischen Blöcken, (d) Kontrolle des Datentransports von / zum Hauptspeicher, (e) ggf. Realisierung einer mehrstufigen Speicherhierarchie, (f) Fehlertoleranzmaßnahmen (stabiler Speicher, Spiegelplatten etc.) Gründe für ein Dateikonzept: (a) selektive Aktivierung von Dateien: on/offline- Problem, (b) dynamische Definition, (c) temporäre Dateien, (d) Einsatz unterschiedlich schneller Speichermedien, (e) kürzere Adreßlängen DB-Speicher entspricht Menge von Dateien Abbildung von Dateien und Blöcken 2

4 Abbildung von Dateien und Blöcken 3 Abbildungsfunktion Blocknummer : {Zylinder, Spur, Sector} Eigenschaften der oberen Schnittstelle: (a) Menge durchnummerierter Blöcke innerhalb von Dateien, (b) Lese- und Schreibzugriff über die Blocknummer, (c) Blockzugriff kann auf Lesefehler führen, Blöcke können alte oder ungültige Daten enthalten Dateien repräsentieren externe Speichermedien für AWP in einer geräteunabhängigen Weise. Das Dateisystem verdeckt die Eigenschaften physischer Speichergeräte und bietet als abstrakte Sicht Dateien, die als lange Byte- Vektoren behandelt werden können. Abbildung von Dateien und Blöcken 3

5 Dateisystem 4 (a) erlaubt eine Reihe von Operationen (vereinfachte Definition) (b) ist als lokales Dateisystem oder als eigenständiger Datei-Server realisiert (c) verwaltet typischerweise einen hierarchischen Namensraum (d) Namensgebung Operationen auf Dateien (a) create/delete: Anlegen und Löschen einer Datei Welche Parameter sind für create erforderlich? (b) Verarbeiten: open/close Welche Aktionen sind bei open erforderlich? (c) Lesen/Schreiben STATUS read (FILE, file address, memory address, length); STATUS write (FILE, file address, memory address, length); Dateisystem 4

6 Realisierung eines Dateisystem 5 Dateikatalog für alle Dateien (Urdatei) feste Position und effiziente Implementierung Obj-bezog. Beschreib. durch Dateideskriptor - Dateiname, OwnerID,... - Zugriffskontrolliste - Zeitinfo. über Erzeugung, Zugriff, Archivierung,... - Dateigröße, Externspeicherzuordnung,... Freispeicherverwaltung für Externspeicher - formatierte Bitlisten, hierarchische Struktur Anlegen/Reservieren von Speicherbereichen - Erstzuweisung und Erweitern Einheit des physischen Zugriffs: Block - Blöcke variabler Länge? - feste Blocklänge pro Datei - chained I/O wichtig für hohe E/A-Leistung Realisierung eines Dateisystem 5

7 Dateiorganisationsformen 6 Dateisystem - verwaltet erzeugte Dateien, Lese-/Schreibzugriff - hält Deskriptor für jede Datei Organisationsformen - Datei in Einfügereihenfolge (entry-sequenced): Einfügen an Dateiende, Satzadresse ist RBA, sequentieller Zugriff oder direkter Zugriff über RBA - relative Datei: Organisation als ARRAY OF RECORDS - wertbasierte Dateien erlauben Zugriff über Satzschlüssel - Datei in Schlüsselreihenfolge (key-sequenced): Speicherung der Sätze in Schlüsselreihenfolge, direkter Zugriff über Schlüssel und sortiert-sequentieller Zugriff - Hash-Datei: direkter Zugriff über Schlüsseltransformation Dateiorganisationsformen 6

8 Blockzuordnungsverfahren 7 Statische Datei-Zuordnung - direkte Adressierung - minimale Zugriffskosten - keine Flexibilität Dynamische Extent-Zuordnung - Adressierung über eine kleine Tabelle - geringe Zugriffskosten - mäßige Flexibilität Dynamische Block-Zuordnung - Adressierung über eine große Tabelle - hohe Zugriffskosten - maximale Flexibilität Blockzuordnungsverfahren 7

9 Blockzuordnung durch Extent-Tabellen 8 Blockzuordnung durch Extent-Tabellen 8

10 Maßnahmen zur Fehlertoleranz beim Lesen-/Schreiben von Blöcken 9 Einfaches Lesen - Lesen kann durch transiente Fehler gestört werden - Zusatzmaßnahme: erfolgloses Lesen wird n-mal wiederholt (sicheres Lesen) Einfaches Schreiben - Schreiben des Blocks als atomare Aktion (ganz oder überhaupt nicht) kann nicht garantiert werden - Schreiben kann durch transiente und dauerhafte Fehler zu falschen Resultaten führen Schreibfehler im Katalog? Klassifikation des Verhaltens von Subsystemen Maßnahmen zur Fehlertoleranz beim Lesen-/Schreiben von Blöcken 9

11 Maßnahmen zur Fehlertoleranz 10 Sicheres Schreiben (read-after-write) - Nach einfachem Schreiben wird Block sofort wieder gelesen und Originalblock verglichen. - Wiederholen bis Block erfolgreich geschrieben - Schreiben gesichert gegen transiente Fehler: dauerhafte Fehler können jedoch zu falschen Resultaten führen. Stabiles Schreiben (duplexed write) - Jeder Block hat eine Versionsnummer, die bei jedem stabilen Schreiben erhöht wird. - Jeder Block wird in festgelegter Reihenfolge in zwei verschiedene Slots S j, S k geschrieben - Prinzip: Stabiler Speicher - Annahme: ein Block wird nicht in einen falschen Slot geschrieben, sonst ist read-after-write erforderlich. Maßnahmen zur Fehlertoleranz 10

12 Maßnahmen zur Fehlertoleranz 11 - Lesen von B i erfolgt erst von Slot S j. Falls es erfolgreich ist, wird angenommen, daß es sich um die jüngste gültige Version von B i handelt. - Falls das Lesen von Slot S j scheitert, wird Slot S k gelesen. - Da ein Systemausfall nur einen Schreibvorgang unterbrechen kann, ist bei Wiederanlauf stets eine Version des Blockes verfügbar. Schreiben ist somit gesichert gegen dauerhafte Fehler. Daß beide Versionen nicht lesbar sind, gilt als unerwartet. Schreiben mit Logging (logged write) - Nach dem Lesen wird ein Block B i mit seinem alten Inhalt auf einen sicheren Platz L geschrieben. - Nach Aktualisierung wird B i mit einem einfachen Schreiben auf seinen alten Platz zurückgeschrieben (ggf. read-after-write). - Falls das Schreiben erfolgreich war, wird die Kopie von B i auf L nicht mehr gebraucht. Maßnahmen zur Fehlertoleranz 11

13 DBMS-Unterstützung für Dateisysteme 12 Motivation - Viele Daten in Unternehmen in Dateien gespeichert - Dies bleibt eher so und nimmt im Umfang zu - Da viele Anwendungen mit Dateien arbeiten, ist es erforderlich, diese Datenzugriffe zu unterstützen (gleichförmiger Zugriff auf DBs und andere Datenquellen) Eigenschaften - Dateisysteme bieten nicht genügend Metadaten für Suchfunktionen und Integritätserhaltung - DBMS unterstützen ein großes Spektrum an Funktionen, sind aber nicht auf Speicherung vieler BLOBs (Multimedia-Typen) eingerichtet - BLOBs benötigen hierarchische Speicherverwaltung von leistungsfähigen Dateisystemen, die eine kosteneffektive Verwaltung der Daten für variierende Zugriffsmuster (häufig oder selten) gewährleisten - Verknüpfung von Dateisystemen und DBMSs soll Vorteile beider Ansätze nutzen DataLinks-Technologie - Integration von unstrukturierten und semistrukturierten Daten mit Anwendungen auf DB-Basis DBMS-Unterstützung für Dateisysteme 12

14 DBMS-Unterstützung für Dateisysteme 13 - DBMS-Funktionalität für Dateien, die außerhalb der DB gespeichert sind: Referentielle Integrität, Zugriffskontrolle, Recovery und Backup-Kopien - Reichweite: große Anzahl von Dateien in Netzwerken Speichermodell von DataLinks - DBMS als Metadaten-Repository mit URLs (Uniform Resource Locators) zu heterogenen Dateisystemen - SQL-Anfragen zur Bereitstellung von URLs - URLs als Referenzen werden konsistent gehalten - Jede URL hat einen Web-/Datei-Server-Namen und einen Dateinamen - Anwendung greift auf ausgewählte Dateien mit Web- Browser oder Dateisystem zu Typische Anwendung - Über URLs referenzierte Dateien bleiben unverändert - Benutzer extrahiert Features von Bildern oder Videos, speichert sie in der DB, um Auswertungen zusammen mit Prädikaten auf anderen DB-Daten zu machen DBMS-Unterstützung für Dateisysteme 13

15 DBMS-Unterstützung für Dateisysteme 14 - Query By Image Content (QBIC) unterstützt Extraktion und Suche auf solchen Features Ziel: - Vorsorge für den Fehlerfall - Koordinierte Duchführung von Backup (Archivkopie) und Recovery (Wiederherstellen) von DBMS-Daten mit den von der DB referenzierten Dateien in den verschiedenen Datei-Servern (aus Sicht von Backup und Recovery sind alle referenzierten Daten DB-Daten) Wenn DB-Backup durchgeführt wird, werden alle Datei-Backups beendet, bevor DB-Backup als erfolgreich erklärt wird Wenn bei DB-Restore Referenzen zu Dateien betroffen sind, werden die betreffenden Dateien ebenfalls zurückgesetzt (Dateien können in der Zwischenzeit gelöscht oder durch neue Versionen ersetzt worden sein) DBMS-Unterstützung für Dateisysteme 14

16 DBMS-Unterstützung für Dateisysteme 15 Systemkonfiguration von DataLinks DBMS-Unterstützung für Dateisysteme 15

17 DBMS-Unterstützung für Dateisysteme 16 Optionen von LinkFile-Kommando DBMS wird Owner der Datei - Zugriffsautorisierung durch das DBMS - DBMS gibt der Anwendung ein Token (unverfälschbar) zum Dateizugriff - Alternative: Anwendung benutzt die Zugriffsautorisierung und -kontrolle des Dateisystems (legacy appl.) Read-only-Markierung - garantiert die Integrität von DB-Indexen, die für den Dateizugriff angelegt werden können - wichtig für koordinierten Backup & Recovery - wenn beide Eigenschaften nicht wichtig sind, kann auf Read-only-Option verzichtet werden Anzeige, daß DBMS die Datei referenziert - Umbenennung/Löschung der Datei verhindert - Referentielle Integrität wird gewährleistet No Control DBMS-Unterstützung für Dateisysteme 16

18 Abbildung von Segmenten und Seiten 17 Realisierung eines Segmentkonzeptes - Ermöglichung verzögerter Einbringstrategien - selektive Einführung von zusätzlichen Attributen, z. B. zur Erhöhung der Fehlertoleranz - Segmente als Einheiten des Sperrens, der Recovery und der Zugriffskontrolle - bei geeigneter Abbildung auf Dateien bleiben Vorteile des Dateikonzeptes erhalten DB-Pufferverwaltung - Bereitstellen und Freigeben von Seiten im DB-Puffer - Vorbereitung von E/A-Anforderungen an die Dateiverwaltung - Optimierung von Ersetzungsstrategien - Unterstützung von Segmenten verschiedenen Typs - neue Aufgaben: Verwaltung von Seiten variabler Länge und von langen Objekten. Aufteilung des logischen DB-Adreßraumes in Segmente mit sichtbaren Seitengrenzen Abbildung von Segmenten und Seiten 17

19 Abbildung von Segmenten und Seiten 18 Beispiel: Operationen an der oberen Schnittstelle Abbildungsfunktion: Seitennummer Blocknummer Hauptspeicher Externspeicher Aufgaben: - Ersetzen eines alten Blocks - Lies den Block mit Seite P i Eigenschaften der oberen Schnittstelle - Linearer Adreßraum, aufgeteilt in Seiten fester Länge - Innerhalb eines Segmentes können die Moduln der nächsthöheren Schicht frei adressieren wie in einem virtuellen Adreßraum - Ein DB-Segment ist nicht-flüchtig (wenn nicht explizit anders vereinbart) Abbildung von Segmenten und Seiten 18

20 Segmenttypen in einem DBMS 19 Klassifikation von Segmenttypen Beispiele für Verwendung der Segmenttypen - Typ 1: Katalog, Schema-Information, Log alle gemeinsam benutzbaren DB-Teile - Typ 2: Teile der DB, die für bestimmte Benutzer bzw. Benutzergruppen reserviert sind - Typ 3: Lokale Kopien von Teilen der DB (Sichten) für einzelne Benutzer (Snapshots) - Typ 4: Hilfsdateien für Benutzerprogramme - Typ 5: Temporärer Speicher z. B. für Sortierprogramme Segmenttypen in einem DBMS 19

21 Warum sichtbare Seiten und Segmente? 20 Explizite Abbildung auf Blöcke und Dateien erhöht Fehlertoleranz DB-Puffer mit Satzschnittstelle? - lineare Hauptspeicherabbildung: Probleme unsichtbarer Seitengrenzen - spanned record facility - benachbarte Seiten müssen im DB-Puffer benachbart angeordnet sein erhebliche Abbildungs- und Ersetzungsprobleme Sichtbare Seitengrenzen an der DB-Puffer-Schnittstelle Warum sichtbare Seiten und Segmente? 20

22 Indirekte Seitenzuordnung 21 Direktes Einbringen von Änderungen Schattenspeicher-Verfahren, Verzögertes Einbringen von Änderungen Indirekte Seitenzuordnung 21

23 Speicherverwaltung beim Schattenspeicher-Verfahren 22 Prinzip der indirekten Seitenzuordnung Abbildung von Seitennr Blocknr. mit Hilfe der Seitentabelle Zerlegung von Seitentabelle V k in einzelne Blöcke Auch die Seitentabelle muß im linearen Adreßraum untergebracht und auf Blöcke abgebildet werden. Speicherverwaltung beim Schattenspeicher-Verfahren 22

24 Schattenspeicher-Verfahren 23 Implementierung fehlertoleranter Systeme Erforderliche Speicherbereiche & Datenstrukt. Schraffierte Strukturen sind in Ausgangssituation nicht benutzte Speicherbereiche, die erst nach Eröffnung für Änderungsbetrieb erforderlich werden. - Status (i) enthält Eröffnungszustand für Segment i (hier: alle Segmente geschlossen). - MAPSWITCH zeigt, welche der beiden (gleichberechtigten) Tabellen Map0 und Map1 das aktuelle Verzeichnis belegter Blöcke enthält. - Wenn ein Segment geschlossen ist, erfüllt sein Inhalt bestimmte, von höheren Schichten kontrollierte Konsistenzbedingungen. Schattenspeicher-Verfahren 23

25 Schattenspeicher-Verfahren 24 Änderungsbetrieb - Auf einer Blockmenge D können gleichzeitig mehrere Segmente für den Änderungsbetrieb geöffnet sein. - Map0, Map1 und CMAP beziehen sich auf die Blockmenge. CMAP enthält für alle Segmente die mit Schattenbzw. aktuellen Seiten belegten Blöcke. - Einer Seite wird nur bei der erstmaligen Änderung nach Eröffnen des Segmentes ein neuer Block zugewiesen. Schattenspeicher-Verfahren 24

26 Schattenspeicher-Verfahren Funktion 25 Wenn Segment k für Änderungen geöffnet werden soll, sind folgende Schritte auszuführen: - kopiere V k0 nach V k1 - STATUS(k) := 1 - Schreibe MASTER in einer ununterbrechbaren Operation aus - Lege im Hauptspeicher eine Arbeitskopie CMAP von MAP0 an. Wenn eine Seite P i erstmalig seit Eröffnen des Segments geändert werden soll, sind folgende Aktionen auszuführen: - Lies Seite P i aus Block j = V k0 (i) - Finde einen freien Block j in CMAP - V k0 (i) = j - Markiere Seite P i in V k0 (i) als geändert - Bei weiteren Änderungen von P i wird Block j verwendet. Schattenspeicher-Verfahren Funktion 25

27 Schattenspeicher-Verfahren Funktion 26 Beenden eines Änderungsintervalls: - Erzeuge die Bitliste mit der aktuellen Speicherbelegung in MAP1 (neue Blöcke belegt, alte freigegeben) - Schreibe MAP1 (kein Überschreiben von MAP0) - Schreibe V k0 - Schreibe alle geänderten Blöcke - STATUS(k) := 0, MAPSWITCH = 1 (MAP1 ist aktuell) - Schreibe MASTER in einer ununterbrechbaren Operation aus. Zum Zurücksetzen geöffneter Segmente muß lediglich V k1 in V k0 kopiert und STATUS(k) auf 0 gesetzt werden. Schattenspeicher-Verfahren Funktion 26

28 Schattenspeicher-Verfahren 27 Erhaltung der physischen Clusterbildung Wegen der dynamischen Neuzuordnung von Blöcken können beim Schattenspeicherverfahren physische Nachbarschaften von logisch zusammengehörigen Seiten bei Änderungen i.a. nicht aufrechterhalten werden. Bsp.: Die Seiten A, B, C, D mögen in allen Transaktionen in eben dieser Reihenfolge berührt werden: Die Änderung von A A und C C führt zu: Eine Verbesserung kann durch Einteilung der Datei in physische Cluster der Größe p und der Segmente in logische Cluster der Größe l sowie deren gegenseitige Zuordnung erreicht werden. Beispiel mit p = 6, l = 4: Bei Plattenspeichern wird ein physisches Cluster i. allg. ein Zylinder sein. Schattenspeicher-Verfahren 27

29 Bewertung des Schattenspeicher-Verfahrens28 Vorteile - Rücksetzen auf letzten konsistenten Zustand einfach - flexiblere Schreibprotokolle für Log-Daten: Pufferung bis Umschalten auf neuen Zustand möglich - logisches Logging möglich, da stets operationskonsistenter Zustand verfügbar - bei katastrophalem Fehler ist Wahrscheinlichkeit höher, einen brauchbaren Zustand der DB zu rekonstruieren Nachteile - Hilfsstrukturen (MAP und Seitentabellen Vi) werden so groß, daß Blockzerlegung notwendig wird - Seitentabellen V i belegen % der DB-Größe, was bei großen DB s ( n GB) zu hohem Anteil von Seitenfehlern im DB-Puffer für Zugriffe auf V i führen kann - periodische Sicherungspunkte erzwingen Ausschreiben des gesamten DB-Puffers - physische Clusterbildung logisch zusammengehöriger Seiten wird beeinträchtigt bzw. zerstört - zusätzlicher Speicherplatz für Doppelbelegung; lange Batch-(Änderungs-)Programme werden dadurch schlecht unterstützt. Bewertung des Schattenspeicher-Verfahrens28

30 Das Zusatzdatei-Verfahren 29 Idee: Wenn eine Datei für Änderungsbetrieb geöffnet wird, wird eine zusätzliche, temporäre Datei angelegt, in welche während des Änderungsintervalles alle modifizierten Blöcke geschrieben werden. Die eigentliche Datei wird dabei nicht verändert. Am Ende des Änderungsintervalles werden alle veränderten Blöcke aus der temporären in die permanente Datei kopiert. Das Einbringen der Änderungen erfolgt also verzögert. Das wesentliche Problem besteht darin, während des Änderungsbetriebes für eine gegebene Seiten- Nr. zu entscheiden, ob die aktuelle Version in der temporären oder permanenten Datei steht. Das Zusatzdatei-Verfahren 29

31 Das Zusatzdatei-Verfahren 30 Prinzip Nutzung einer Bitliste, die anzeigt, ob eine Seite möglicherweise geändert wurde Hashabbildung erlaubt Begrenzung des Speicherplatzbedarfs Das Zusatzdatei-Verfahren 30

32 Das Zusatzdatei-Verfahren, Bloom-Filter 31 Wirkungsweise - Bitliste B der Länge M im Hauptspeicher - Abbildung des Satzschlüssels bei Änderung des Satzes über Hash-Funktionen - Hash-Funktionen zur Satzabbildung adressieren x Bits, die in B auf 1 gesetzt werden Aufsuchen von Satz S i - Erzeugen der charakteristischen x Bits in temporärer Bitliste T - AND-Operation von T und B in Erg - wenn alle x Bits in Erg gesetzt VIEL- LEICHT, sonst NEIN Das Zusatzdatei-Verfahren, Bloom-Filter 31

33 Das Zusatzdatei-Verfahren, Bloom-Filter 32 Beispiel Wenn (B AND T) = T, dann Antwort VIEL- LEICHT! Das Zusatzdatei-Verfahren, Bloom-Filter 32

34 Zusammenfassung 33 Speicherzuordnungsstrukturen erfordern effizientes Dateikonzept - viele Dateien variierender, nicht statisch festgelegter Größe - Wachstum und Schrumpfung erforderlich - permanente und temporäre Dateien empfohlene Datei-Eigenschaften: - direkter und sequentieller Blockzugriff - Blockgröße pro Datei definierbar - Blockzuordnung über dynamische Extents Blockzuordnungsverfahren von UNIX untauglich für große Dateien DBMS-Unterstützung für externe Dateien - DataLinks-Konzept: Optionen zur Unterstützung der Dateiverwaltung - Zugriffskontrolle, Referentielle Integrität, Backup und Recovery Zusammenfassung 33

35 Zusammenfassung 34 Segmentkonzept erlaubt die Realisierung zusätzlicher Attribute für die DB-Verarbeitung (Recovery, Clusterbildung für Relationen usw.) zweistufige Abbildung - von Segment/Seite auf Datei/Block und diese auf Slots der Magnetplatte erlaubt Einführung von Abbildungsredundanz durch verzögertes Einbringen Verzögerte Einbringstrategien - sind teurer als direkte, besitzen jedoch implizite Fehlertoleranz - sie belasten den Normalbetrieb zugunsten der Recovery Direkte Einbringstrategie (update-in-place) - einfach zu implementieren - keine Zusatzkosten zur Ausführungszeit für die Seitenzuordnung - Fehlertoleranz nur durch explizite Loggingu. Recovery-Funktionen Zusammenfassung 34

36 DB-Pufferverwaltung 35 Rolle der DB-Pufferverwaltung - Ablauf des Zugriffs auf den DB-Puffer - logische und physische Seitenreferenzen Eigenschaften von DB-Referenzstrings - Seitenreferenzstrings - Lokalität - LRU-Stacktiefenverteilung - Referenzdichte-Kurven Speicherzuteilung im DB-Puffer Suche im DB-Puffer Seitenersetzungsverfahren - Klassifikation von Ersetzungsverfahren - LRU, FIFO, CLOCK, GCLOCK, LRD, LRU-K... - Leistungsanalyse von Ersetzungsverfahren Einbezug von Kontext- Ersetzungsverfahren wissen - Hot-Set-Modell - Prioritätsgesteuerte Seitenersetzung DB-Pufferverwaltung bei Seiten variabler Größe Seitenersetzung bei virtuellem Speicher DB-Pufferverwaltung 35

37 Rolle der DB-Pufferverwaltung in DBS 36 Rolle der DB-Pufferverwaltung in DBS 36

38 Vergleich mit Betriebssystemfunktionen 37 Können Dateipuffer des Betriebssystems als DB- Puffer eingesetzt werden? 1. Zugriff auf Dateipuffer ist teuer (SVC: supervisor call) 2. DB-spezifische Referenzmuster können nicht mehr gezielt genutzt werden BS-Ersetzungsverfahren sind z. B. nicht auf zyklisch sequentielle oder baumartige Zugriffsfolgen abgestimmt 3. Normale Dateisysteme (DVS) bieten keine geeignete Schnittstelle für Prefetching. In DBVS ist aufgrund von Seiteninhalten oder Referenzmustern eine Voraussage des Referenzverhaltens möglich; durch Prefetching läßt sich in solchen Fällen eine Leistungssteigerung erzielen 4. Selektives Ausschreiben von Seiten zu bestimmten Zeitpunkten (z. B. für Logging) nicht immer möglich in existierenden Dateisystemen DBVS muß eigene Pufferverwaltung realisieren Vergleich mit Betriebssystemfunktionen 37

39 Eigenschaften von DB-Referenzstrings 38 Typische Referenzmuster in DBS 1. Sequentielle Suche 2. Hierarchische Pfade 3. Zyklische Pfade Eigenschaften von DB-Referenzstrings 38

40 Relative Referenzmatrix (DOA-Last) 39 ca Transaktionen, 1 Million Seitenreferenzen auf ca verschiedene Seiten Relative Referenzmatrix (DOA-Last) 39

41 Lokalität 40 erhöhte Wiederbenutzungswahrscheinlichkeit für gerade referenzierte Seiten (gradueller Begriff) grundlegende Voraussetzung für - effektive DB-Pufferverwaltung (Seitenersetzung) - Einsatz von Speicherhierarchien Wie kann man Lokalität messen? Working-Set-Modell Working Set Size: W (t1, w = 8) = 3, W(t2,w=8)=8 Aktuelle LokalitätÖ AL(t, w) = W (t,w) w nt=1 AL(t,w) Durchschnittliche Lokalität: L(w) = n (n=länge des Referenzstrings) Lokalität 40

42 LRU-Stacktiefenverteilung 41 Maß für die Lokalität (präziser als Working- Set-Ansatz) LRU-Stack enthält alle bereits referenzierten Seiten in der Reihenfolge ihres Zugriffsalters Bestimmung der Stacktiefenverteilung - pro Stackposition wird Zähler geführt - Rereferenz einer Seite führt zur Zählererhöhung für die jeweilige Stackposition Zählerwerte entsprechen der Wiederbenutzungshäufigkeit Für LRU-Seitenersetzung kann aus der Stacktiefenverteilung für eine bestimmte Puffergröße unmittelbar die Trefferrate (bzw. Fehlseitenrate) bestimmt werden LRU-Stacktiefenverteilung 41

43 Beispiel: Ermittlung der Stacktiefenverteilung 42 Beispiel: Ermittlung der Stacktiefenverteilung 42

44 Referenzdichte-Kurven 43 Anteil der Seitentypen: FPA = 0,1%, DBTT = 6,1%, USER = 93,8% Referenzdichte-Kurven 43

45 Speicherzuteilung im DB-Puffer 44 Speicherzuteilung Partitionierungsmöglichkeiten: - eigener Pufferbereich pro Transaktion - TA-Typ-bezogene Pufferbereiche - Seitentyp-bezogene Pufferbereiche - DB-(Partitions)spezifische Pufferbereiche Speicherzuteilung im DB-Puffer 44

46 Dynamische Pufferallokation Working-Set-Ansatz 45 pro Pufferpartition P soll Working-Set im Puffer bleiben; Seiten, die nicht zum Working-Set gehören, können ersetzt werden bei Fehlseitenbedingung muß Working-Set bekannt sein, um Ersetzungskandidat zu bestimmen - Fenstergröße pro Partition: w(p ) - Referenzzähler pro Partition: RZ(P ) - letzter Referenzzeitpunkt für Seite i: LRZ(P, i) - ersetzbar sind solche Seiten, für die RZ(P ) LRZ(P, i) > w(p ) Fenstergröße kritischer Parameter Thrashing Dynamische Pufferallokation Working-Set-Ansatz 45

47 Suche im DB-Puffer 46 Sequentielles Durchsuchen der Pufferrahmen - sehr hoher Suchaufwand - Gefahr vieler Paging-Fehler bei virtuellen Speichern Nutzung von Hilfsstrukturen (Eintrag pro Pufferrahmen) 1. unsortierte oder sortierte Tabelle 2. Tabelle mit verketteten Einträgen - geringere Änderungskosten - Anordnung in LRU-Reihenfolge möglich 3. Suchbäume (z. B. AVL-, m-weg-bäume) 4. Hash-Tabelle mit Überlaufketten - beste Lösung Suche im DB-Puffer 46

48 Seitenersetzungsverfahren 47 Klassifikation Grundannahme bei Ersetzungsverfahren Seitenersetzungsverfahren 47

49 Referenzverhalten und Ersetzungsverfahren 48 typischerweise hohe Lokalität: Optimierung durch Ersetzungsverfahren manchmal Sequentialität oder zufällige Arbeitslast (RANDOM-Referenzen) Prinzipielle Zusammenhänge, die die Fehlseitenrate bestimmen Referenzverhalten und Ersetzungsverfahren 48

50 Behandlung geänderter Seiten im DB-Puffer49 Ersetzung einer geänderten Seite erfordert ihr vorheriges (synchrones) Zurückschreiben in die DB Antwortzeitverschlechterung Abhängigkeit zur Ausschreibstrategie FORCE: alle Änderungen einer Transaktion werden spätestens beim EOT in die DB zurückgeschrieben (write-through) + stets ungeänderte Seiten zur Ersetzung vorhanden + vereinfachte Recovery (nach Rechnerausfall sind alle Änderungen beendeter TA bereits in der DB ) - hoher E/A-Overhead - starke Antwortzeiterhöhung für Änderungstransaktionen NOFORCE: kein Durchschreiben der Änderungen bei EOT (verzögertes Ausschreiben, deferred write-back) Seite kann mehrfach geändert werden, bevor ein Ausschreiben erfolgt (geringerer E/A-Overhead, bessere Antwortzeiten) vorausschauendes (asynchrones) Ausschreiben geänderter Seiten: erlaubt auch bei NOFORCE, vorwiegend ungeänderte Seiten zu ersetzen synchrone Schreibvorgänge in die DB lassen sich weitgehend vermeiden Behandlung geänderter Seiten im DB-Puffer49

51 Kriterien für die Auswahl der zu ersetzenden Pufferseite 50 Kriterien für die Auswahl der zu ersetzenden50 Pufferseite

52 Least-Frequently-Used (LFU) 51 Führen eines Referenzzählers pro Seite im DB- Puffer Ersetzung der Seite mit der geringsten Referenzhäufigkeit Alter einer Seite wird nicht berücksichtigt Least-Frequently-Used (LFU) 51

53 FIFO (First-In First-Out) 52 die älteste Seite im DB-Puffer wird ersetzt Referenzierungsverhalten während Pufferaufenthaltes wird nicht berücksichtigt nur für strikt sequentielles Referenzverhalten geeignet FIFO (First-In First-Out) 52

54 Least-Recently-Used (LRU) 53 Beispiel (Puffergröße 4): 1. Referenz der Seite C 2. Referenz der Seite E Unterscheidung zwischen Least-Recently-Referenced und Least-Recently- Unfixed Least-Recently-Used (LRU) 53

55 CLOCK (Second Chance) 54 Erweiterung von FIFO Referenzbit pro Seite, das bei Zugriff gesetzt wird Ersetzung erfolgt nur bei zurückgesetztem Bit (sonst erfolgt Zurücksetzen des Bits) annähernde Berücksichtigung des letzten Referenzierungszeitpunktes CLOCK (Second Chance) 54

56 GCLOCK (Generalized CLOCK) 55 pro Seite wird Referenzzähler geführt (statt Bit) Ersetzung nur von Seiten mit Zählerwert 0 (sonst erfolgt Dekrementierung des Zählers und Betrachtung der nächsten Seite) Verfahrensparameter: - Initialwerte für Referenzzähler - Wahl des Dekrementes - Zählerinkrementierung bei erneuter Referenz - Vergabe von seitentyp- oder seitenspezifischen Gewichten GCLOCK (Generalized CLOCK) 55

57 Least-Reference-Density (LRD) 56 Referenzdichte: Referenzhäufigkeit während eines bestimmten Referenzintervalls Variante 1: Referenzintervall entspricht Alter einer Seite Berechnung der Referenzdichte: Globaler Zähler GZ: Gesamtanzahl aller Referenzen Einlagerungszeitpunkt EZ: GZ-Wert bei Einlesen der Seite Referenzzähler RZ Referenzdichte RD(j) = RZ(j) GZEZ(j) Least-Reference-Density (LRD) 56

58 Least-Reference-Density (2) 57 Variante 2: konstante Intervallgröße - periodisches Reduzieren der Referenzzähler, um Gewicht früher Referenzen zu reduzieren - Reduzierung von RZ durch Division oder Subtraktion: RZ(i) = RZ(i) K1, (K1 > 1) oder RZ(i) K2, falls RZ(i) K2 K3 RZ(i) = K3 sonst (K2 > 0, K3 0) Least-Reference-Density (2) 57

59 LRU-K 58 Aufzeichnung der K letzten Referenzzeitpunkte (pro Seite im DB-Puffer) - Aufwendigere Aufzeichnung gewährleistet aktuelle Ersetzungsinformation; Methode benötigt kein explizites Altern über Tuning-Parameter wie LRD-V2 - Gegeben sei bis zum Betrachtungszeitpunkt t der Referenzstring r 1, r 2,..., r t. Rückwärtige K-Distanz b t (P, K) ist die in Referenzen gemessene Distanz rückwärts bis zur K-jüngsten Referenz auf Seite P : b t (P, K) = x, wenn r t x den Wert P besitzt und es genau K 1 andere Werte i mit t x < i t mit r i = P gab. b t (P, K) =, wenn P nicht wenigstens K mal in r 1, r 2,..., r t referenziert wurde Beispiel (K = 4) LRU-K 58

60 LRU-K 59 Zur Ersetzung genügt es, die b t (P i, K) der Pufferseiten zu berücksichtigen! - Sonderbehandlung für Seiten mit weniger als K Referenzen erforderlich - Wie hängt LRU-K mit LRD zusammen? Approximation der Referenzdichte? LRU-2 (d.h. K = 2) stellt i. allg. beste Lösung dar - ähnlich gute Ergebnisse wie für K > 2, jedoch einfachere Realisierung - Verfahren reagiert schneller auf Referenzschwankungen als bei größeren K LRU-K 59

61 Hot-Set-Modell 60 Ausnutzung von Kontextwissen bei mengenorientierten Anforderungen Verbesserung in relationalen DBS möglich Zugriffspläne durch Optimizer - Zugriffscharakteristik/Menge der referenzierten Seiten kann bei der Erstellung von Plänen vorausgesagt/abgeschätzt werden - Zugriffsmuster enthält immer Zyklen/Loops (mindestens Kontrollseite Datenseite, nested loop join etc.) - Kostenvoranschläge für Zugriffspläne können verfügbare Rahmen berücksichtigen - Bei Ausführung wird die Mindestrahmenzahl der Pufferverwaltung mitgeteilt Hot-Set: Menge der Seiten im Referenzzyklus Prinzipieller Verlauf der Fehlseitenrate (FSR) bei speziellen Operationen Hot-Set-Modell 60

62 Hot-Set-Modell 61 Hot-Set-Modell 61

63 Hot-Set-Modell 62 Hot Point: abrupte Veränderung in der FSR, z. B. verursacht durch Schleife beim Verbund Hot Set Size (HSS): größter Hot Point kleiner als der verfügbare DB-Puffer Optimizer berechnet HSS für die verschiedenen Zugriffspläne (Abschätzung der #Rahmen) Beispiel: Anwendungscharakteristika - Berücksichtigung der HSS in Gesamtkosten - Auswahl abhängig von verfügbarer DB-Puffergröße - Bindung zur Laufzeit möglich Hot-Set-Modell 62

64 Zusammenfassung 63 Referenzmuster in DBS sind Mischformen - sequentielle, zyklische, wahlfreie Zugriff - Lokalität innerhalb und zwischen Transaktionen - bekannte Seiten mit hoher Referenzdichte Ohne Lokalität ist jede Optimierung der Seitenersetzung sinnlos (RANDOM) Suche im Puffer durch Hash-Verfahren Speicherzuteilung: - global alle Pufferrahmen für alle Transaktionen (Einfachheit, Stabilität...) - lokal Sonderbehandlung bestimmter Transaktionen/Anfragen/ DB-Bereiche Behandlung geänderter Seiten: NOFORCE, asynchrones Ausschreiben Zusammenfassung 63

65 Zusammenfassung 64 Seitenersetzungsverfahren - zu genaue Verfahren sind schwierig einzustellen (instabil) - Nutzung mehrerer Kriterien: Alter, letzte Referenz, Referenzhäufigkeit - CLOCK LRU, aber einfachere Implementierung - GCLOCK, LRD, LRU-K relativ komplex - LRU-2 guter Kompromiss; vorletzter Referenzzeitpunkt bestimmt Opfer Erweiterte Ersetzungsverfahren - Nutzung von Zugriffsinformationen des Query- Optimierers (Hot-Set-Modell) - Berücksichtigung von Prioritäten Zusammenfassung 64

3. Speicher- und Seitenzuordnung

3. Speicher- und Seitenzuordnung 3. Speicher- und Seitenzuordnung Pufferschnittstelle Seiten, Segmente Pufferverwaltung, Seitenzuordnungsstrukturen Segmentverwaltung Dateischnittstelle Blöcke, Dateien Dateiverwaltung Speicherzuordnungsstrukturen

Mehr

3. Speichersystem / Pufferverwaltung

3. Speichersystem / Pufferverwaltung 3. Speichersystem / Pufferverwaltung Dateiverwaltung Direkte vs. indirekte Seitenzuordnung Segmentkonzept direkte vs. indirekte Einbringstrategien DB-Pufferverwaltung: Grundlagen allgemeine Merkmale Speicherzuteilung

Mehr

3. DB-Pufferverwaltung

3. DB-Pufferverwaltung . DB-Pufferverwaltung Ziel: Realisierung einer effizienten, seitenbasierten Verarbeitungsplattform im Hauptspeicher - größtmögliche Vermeidung von physischer Ein-/Ausgabe - Ersetzungsverfahren ohne und

Mehr

3. Speichersystem / Pufferverwaltung

3. Speichersystem / Pufferverwaltung 3. Speichersystem / Pufferverwaltung Dateiverwaltung Direkte vs. indirekte Seitenzuordnung Segmentkonzept Indirekte Einbringstrategien DB-Pufferverwaltung: Grundlagen Allgemeine Charakteristika Speicherzuteilung

Mehr

Implementierung von Datenbanksystemen

Implementierung von Datenbanksystemen Implementierung von Datenbanksystemen Kapitel 2: Teile dieses Foliensatzes beruhen auf ähnlichen Vorlesungen, gehalten von Prof. Dr. T. Härder am Fachbereich Informatik der Universität Kaiserslautern und

Mehr

3. Speichersystem / Pufferverwaltung

3. Speichersystem / Pufferverwaltung 3. Speichersystem / Pufferverwaltung Dateiverwaltung Direkte vs. indirekte Seitenzuordnung Segmentkonzept Indirekte Einbringstrategien DB-Pufferverwaltung: Grundlagen Allgemeine Charakteristika Speicherzuteilung

Mehr

DB IIb, Implementierung von Datenbanken

DB IIb, Implementierung von Datenbanken DB IIb, Implementierung von Datenbanken Alexander Hinneburg WS 2008/2009 Inhaltsverzeichnis 1 Organisation 1 2 Architektur eines DBS 2 2.1 Anforderungen an DBS..................................... 2 2.2

Mehr

4. DBS-Pufferverwaltung

4. DBS-Pufferverwaltung 4. DBS-Pufferverwaltung llgemeine Charakteristika blauf des Pufferzugriffs Referenzstrings, Stacktiefenverteilung Speicherzuteilung im Puffer Suche im Puffer Schreibstrategien (Force vs. Noforce) Lesestrategien

Mehr

4 Systempuffer (Buffer Pool) Prof. Dr.-Ing. Wolfgang Lehner

4 Systempuffer (Buffer Pool) Prof. Dr.-Ing. Wolfgang Lehner 4 Systempuffer (Buffer Pool) Prof. Dr.-Ing. Wolfgang Lehner > Gliederung Arbeitsweise und Eigenschaften Dienste eines Systempuffers Suche im DB-Puffer Einsatz von Seitenreferenzstrings Working-Set Modell

Mehr

Rückblick: Architektur und Hintergrundspeicher

Rü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

Mehr

Implementierung von Datenbanksystemen

Implementierung von Datenbanksystemen Implementierung von Datenbanksystemen Kapitel 3: Teile dieses Foliensatzes beruhen auf ähnlichen Vorlesungen, gehalten von Prof. Dr. T. Härder am Fachbereich Informatik der Universität Kaiserslautern und

Mehr

3. DB-Pufferverwaltung

3. DB-Pufferverwaltung . DB-Pufferverwaltung Ziel: Realisierung einer effizienten, seitenbasierten Verarbeitungsplattform im Hauptspeicher - größtmögliche Vermeidung von physischer Ein-/Ausgabe - Ersetzungsverfahren ohne und

Mehr

Abschluss Einblick und Ausblick

Abschluss Einblick und Ausblick Abschluss Einblick und Ausblick Prof. Dr. T. Kudraß 1 Benutzer Komponenten eines DBMS (Überblick) I/O-Prozessor Output-Generierung Parser für selbst. oder eingebettete Kommandos Precompiler Autorisierungs-Kontrolle

Mehr

Teil 2: Speicherstrukturen

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

Mehr

3. DB-Pufferverwaltung

3. DB-Pufferverwaltung . D-Pufferverwaltung Rolle der D-Pufferverwaltung in einem Datenbanksystem Ziel: Realisierung einer effizienten, seitenbasierten Verarbeitungsplattform im Hauptspeicher - größtmögliche Vermeidung von physischer

Mehr

Kapitel V Kapitel VII II File File--Systeme Systeme VO Betriebssysteme 1

Kapitel V Kapitel VII II File File--Systeme Systeme VO Betriebssysteme 1 Kapitel VII File-Systeme VO Betriebssysteme 1 Langzeitspeicher: File Was ist ein File? Eine Kollektion von Informationen mit einem Namen, die im Sekundärspeicher gespeichert ist. speichere große Datenmengen

Mehr

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

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

Mehr

9.3 Fehlerbehandlung

9.3 Fehlerbehandlung 9.3 Fehlerbehandlung Schutz vor Beeinträchtigungen durch Fehler des Systems oder eines Benutzers nach Systemzusammensturz innerhalb einer TA inkonsistenter Zustand der DB physische und logische Inkonsistenz

Mehr

2. Externspeicherverwaltung

2. Externspeicherverwaltung 2. Externspeicherverwaltung Dieses Kapitel umfaßt die Aufgaben und Abbildungsverfahren der beiden untersten Schichten des Schichtenmodells (Speicherzuordnungs- und Seitenzuordnungsstrukturen) Abbildung

Mehr

Aufbau Datenbanksysteme

Aufbau Datenbanksysteme Aufbau Datenbanksysteme Lehrveranstaltung Datenbanktechnologien Prof. Dr. Ingo Claßen Prof. Dr. Martin Kempa Hochschule für Technik und Wirtschaft Berlin Speichersystem c Ingo Claßen, Martin Kempa Softwarearchitektur

Mehr

Fehlerbehandlung und Recovery

Fehlerbehandlung und Recovery 1 / 44 Fehlerbehandlung und Recovery VU Datenbanksysteme vom 24.10. 2016 Reinhard Pichler Arbeitsbereich Datenbanken und Artificial Intelligence Institut für Informationssysteme Technische Universität

Mehr

Grob-Struktur des Prozessor-Speichersystems

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

Mehr

9. Dateisysteme. Betriebssysteme Harald Kosch Seite 164

9. Dateisysteme. Betriebssysteme Harald Kosch Seite 164 9. Dateisysteme Eine Datei ist eine Abstraktion für ein Aggregat von Informationen (muß nicht eine Plattendatei sein). Aufbau eines Dateisystems: Katalog (Directory) Einzelne Dateien (Files) Zwei Aspekte

Mehr

Betriebssysteme 1. Thomas Kolarz. Folie 1

Betriebssysteme 1. Thomas Kolarz. Folie 1 Folie 1 Betriebssysteme I - Inhalt 0. Einführung, Geschichte und Überblick 1. Prozesse und Threads (die AbstrakFon der CPU) 2. Speicherverwaltung (die AbstrakFon des Arbeitsspeichers) 3. Dateisysteme (die

Mehr

In diesem Abschnitt wollen wir uns mit der Architektur von Datenbank Managements Systemen beschäftigen.

In diesem Abschnitt wollen wir uns mit der Architektur von Datenbank Managements Systemen beschäftigen. 1 In diesem Abschnitt wollen wir uns mit der Architektur von Datenbank Managements Systemen beschäftigen. Zunächst stellt sich die Frage: Warum soll ich mich mit der Architektur eines DBMS beschäftigen?

Mehr

Virtueller Speicher und Memory Management

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

Mehr

Hash-Verfahren. Einführung

Hash-Verfahren. Einführung Hash-Verfahren Prof. Dr. T. Kudraß 1 Einführung Drei Alternativen, wie Dateneinträge k* im Index aussehen können: 1. Datensatz mit Schlüsselwert k.

Mehr

Hash-Verfahren. Prof. Dr. T. Kudraß 1

Hash-Verfahren. Prof. Dr. T. Kudraß 1 Hash-Verfahren Prof. Dr. T. Kudraß 1 Einführung Drei Alternativen, wie Dateneinträge k* im Index aussehen können: 1. Datensatz mit Schlüsselwert k.

Mehr

Fehlerbehandlung (Recovery)

Fehlerbehandlung (Recovery) Fehlerbehandlung (Recovery) Fehlerklassifikation 1. Lokaler Fehler in einer noch nicht festgeschriebenen (committed) Transaktion Wirkung muss zurückgesetzt werden R1-Recovery 2. Fehler mit Hauptspeicherverlust

Mehr

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

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

Mehr

Leichtgewichtsprozesse

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

Mehr

Leichtgewichtsprozesse

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

Mehr

Besprechung des 9. Übungsblattes Virtuelle Speicherverwaltung Aufgaben

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

Mehr

Fehlerklassifikation 1. Lokaler Fehler in einer noch nicht festgeschriebenen. Wirkung muss zurückgesetzt werden R1-Recovery

Fehlerklassifikation 1. Lokaler Fehler in einer noch nicht festgeschriebenen. Wirkung muss zurückgesetzt werden R1-Recovery Fehlerbehandlung (Recovery) Fehlerklassifikation 1. Lokaler Fehler in einer noch nicht festgeschriebenen (committed) Transaktion Wirkung muss zurückgesetzt werden R1-Recovery Recovery 2. Fehler mit Hauptspeicherverlust

Mehr

RO-Tutorien 15 und 16

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

Mehr

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

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

Mehr

Fehlerbehandlung (Recov

Fehlerbehandlung (Recov Fehlerbehandlung (Recov Fehlerarten Auswirkung der Speicherhierarchie Protokollierung von Änderungen Wiederanlauf nach Fehler ( Sicherungspunkte) Media-Recovery Kapitel 10 1 Fehlerbehandlung (Recovery)

Mehr

13. Hashing. AVL-Bäume: Frage: Suche, Minimum, Maximum, Nachfolger in O(log n) Einfügen, Löschen in O(log n)

13. Hashing. AVL-Bäume: Frage: Suche, Minimum, Maximum, Nachfolger in O(log n) Einfügen, Löschen in O(log n) AVL-Bäume: Ausgabe aller Elemente in O(n) Suche, Minimum, Maximum, Nachfolger in O(log n) Einfügen, Löschen in O(log n) Frage: Kann man Einfügen, Löschen und Suchen in O(1) Zeit? 1 Hashing einfache Methode

Mehr

DATEIVERWALTUNG INHALTSVERZEICHNIS. STANZL Martin 4. HB/a. Verwendete Literatur: Konzepte der Betriebssysteme (Seiten 91-97)

DATEIVERWALTUNG INHALTSVERZEICHNIS. STANZL Martin 4. HB/a. Verwendete Literatur: Konzepte der Betriebssysteme (Seiten 91-97) DATEIVERWALTUNG STANZL Martin 4. HB/a Verwendete Literatur: Konzepte der Betriebssysteme (Seiten 91-97) INHALTSVERZEICHNIS 1. Die Aufteilung des Plattenspeichers... 2 2. Der Aufbau von Dateien... 2 3.

Mehr

Speicherverwaltung (Swapping und Paging)

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

Mehr

Dateisysteme. Erweiterte Anforderungen an Speicher

Dateisysteme. Erweiterte Anforderungen an Speicher Erweiterte Anforderungen an Speicher Mehr Speicher als adressierbar ist. Daten sollen nach Beendigung des Prozesses zur Verfügung stehen Mehrere Prozesse sollen auf die Daten zugreifen können. Nutzung

Mehr

Algorithmen und Datenstrukturen 1

Algorithmen und Datenstrukturen 1 Algorithmen und Datenstrukturen 1 10. Vorlesung Peter F. Stadler Universität Leipzig Institut für Informatik studla@bioinf.uni-leipzig.de Suchverfahren für große Datenmengen bisher betrachtete Datenstrukturen

Mehr

Technische Realisierung (1)

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

Mehr

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

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

Mehr

Systeme 1. Kapitel 3 Dateisysteme WS 2009/10 1

Systeme 1. Kapitel 3 Dateisysteme WS 2009/10 1 Systeme 1 Kapitel 3 Dateisysteme WS 2009/10 1 Letzte Vorlesung Dateisysteme Hauptaufgaben Persistente Dateisysteme (FAT, NTFS, ext3, ext4) Dateien Kleinste logische Einheit eines Dateisystems Dateitypen

Mehr

Dynamische Datenstrukturen

Dynamische Datenstrukturen Dynamische Datenstrukturen B-Bäume größere Datenmengen verwalten Extern speichern Art der Speicherung berücksichtigen sonst kein optimaler Datenzugriff möglich Art der Speicherung großer Datenmengen Magnetplatten

Mehr

Vorlesung "Verteilte Systeme" Wintersemester 2000/2001. Verteilte Systeme. 14. Transaktionen

Vorlesung Verteilte Systeme Wintersemester 2000/2001. Verteilte Systeme. 14. Transaktionen Verteilte Systeme 14. Transaktionen Motivation Sicherung konsistenter Systemzustände Beispiele Amnesieproblematik bei zustandsbehafteten Servern Sicherung des Primaries (Primary-Backup- Approach) Aktive

Mehr

9. Transaktionsverwaltung 9.3. Fehlerbehandlung Seite 1

9. Transaktionsverwaltung 9.3. Fehlerbehandlung Seite 1 9. Transaktionsverwaltung 9.3. Fehlerbehandlung Seite 1 9.3 Fehlerbehandlung Im realen Betrieb eines Datenbanksystems muss mit Fehlersituationen gerechnet werden. Transaktionsfehler: Hierunter verstehen

Mehr

Quiz. Gegeben sei ein 16KB Cache mit 32 Byte Blockgröße. Wie verteilen sich die Bits einer 32 Bit Adresse auf: Tag Index Byte Offset.

Quiz. Gegeben sei ein 16KB Cache mit 32 Byte Blockgröße. Wie verteilen sich die Bits einer 32 Bit Adresse auf: Tag Index Byte Offset. Quiz Gegeben sei ein 16KB Cache mit 32 Byte Blockgröße. Wie verteilen sich die Bits einer 32 Bit Adresse auf: Tag Index Byte Offset 32 Bit Adresse 31 3 29... 2 1 SS 212 Grundlagen der Rechnerarchitektur

Mehr

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

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

Mehr

2.3 Prozessverwaltung

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

Mehr

12. Hashing. Hashing einfache Methode um Wörtebücher zu implementieren, d.h. Hashing unterstützt die Operationen Search, Insert, Delete.

12. Hashing. Hashing einfache Methode um Wörtebücher zu implementieren, d.h. Hashing unterstützt die Operationen Search, Insert, Delete. Hashing einfache Methode um Wörtebücher zu implementieren, d.h. Hashing unterstützt die Operationen Search, Insert, Delete. Worst-case Zeit für Search: Θ(n). In der Praxis jedoch sehr gut. Unter gewissen

Mehr

Kapitel 2: Referenzarchitektur für Datenbanksysteme. Kapitel 2: Referenzarchitektur für Datenbanksysteme. Was ist ein Dienst?

Kapitel 2: Referenzarchitektur für Datenbanksysteme. Kapitel 2: Referenzarchitektur für Datenbanksysteme. Was ist ein Dienst? Kapitel 2: Referenzarchitektur für Datenbanksysteme Kapitel 2: Referenzarchitektur für Datenbanksysteme Methodischer Architekturentwurf Architekturentwurf für Datenbanksysteme Referenzarchitektur Methodischer

Mehr

Lösung von Übungsblatt 2

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

Mehr

B*-BÄUME. Ein Index ist seinerseits wieder nichts anderes als eine Datei mit unpinned Records.

B*-BÄUME. Ein Index ist seinerseits wieder nichts anderes als eine Datei mit unpinned Records. B*-Bäume 1 B*-BÄUME Beobachtung: Ein Index ist seinerseits wieder nichts anderes als eine Datei mit unpinned Records. Es gibt keinen Grund, warum man nicht einen Index über einem Index haben sollte, und

Mehr

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

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

Mehr

KAPITEL 2 SPEICHERSTRUKTUREN UND VERWALTUNG DES HINTERGRUNDSPEICHERS

KAPITEL 2 SPEICHERSTRUKTUREN UND VERWALTUNG DES HINTERGRUNDSPEICHERS KAPITEL 2 SPEICHERSTRUKTUREN UND VERWALTUNG DES HINTERGRUNDSPEICHERS h_da Prof. Dr. Uta Störl Architektur von DBMS WS 2017/18 Kapitel 2: Speicherstrukturen und Verwaltung des Hintergrundspeichers 1 Speicherstrukturen

Mehr

Grundlagen der Rechnerarchitektur

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

Mehr

Betriebssysteme (BTS)

Betriebssysteme (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

Mehr

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

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

Mehr

5 Kernaufgaben eines Betriebssystems (BS)

5 Kernaufgaben eines Betriebssystems (BS) 5 Kernaufgaben eines Betriebssystems (BS) Betriebssystem ist eine Menge von Programmen, die die Abarbeitung anderer Programme auf einem Rechner steuern und überwachen, insbesondere verwaltet es die Hardware-Ressourcen

Mehr

Anforderungen / Begriffe. Voraussetzungen für die Wiederherstellung der Daten

Anforderungen / Begriffe. Voraussetzungen für die Wiederherstellung der Daten und Norbert Ritter Datenbanken und Informationssysteme vsis-www.informatik.uni-hamburg.de Anforderungen / Voraussetzungen für die Wiederherstellung der Daten quasi-stabiler Speicher fehlerfreier DBVS-Code

Mehr

Datenbanken: Indexe. Motivation und Konzepte

Datenbanken: Indexe. Motivation und Konzepte Datenbanken: Indexe Motivation und Konzepte Motivation Warum sind Indexstrukturen überhaupt wünschenswert? Bei Anfrageverarbeitung werden Tupel aller beteiligter Relationen nacheinander in den Hauptspeicher

Mehr

Grundlagen der Dateisysteme. Daniel Lieck

Grundlagen der Dateisysteme. Daniel Lieck Grundlagen der Dateisysteme Daniel Lieck Einführung Dateisysteme wofür eigentlich? - Ändern, Erstellen, Löschen von Dateien - Strukturierung der Dateien auf Datenträger - Dateiname und rechnerinterne Speicheradressen

Mehr

Speicherhierarchie. Für die Dauer eines Zugriffs wird die Seite im Puffer fixiert (pin) Werden Daten geändert, so wird die Seite als dirty markiert

Speicherhierarchie. Für die Dauer eines Zugriffs wird die Seite im Puffer fixiert (pin) Werden Daten geändert, so wird die Seite als dirty markiert Verteilte Recovery Speicherhierarchie Für die Dauer eines Zugriffs wird die Seite im Puffer fixiert (pin) Werden Daten geändert, so wird die Seite als dirty markiert Pufferverwaltung Zugriff zu den Daten

Mehr

(Cache-Schreibstrategien)

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

Mehr

Recovery. Prof. Dr. T. Kudraß 1

Recovery. Prof. Dr. T. Kudraß 1 Recovery Prof. Dr. T. Kudraß 1 Transaktionsfehler Fehlerarten: Transaktionsfehler Freiwilliger Transaktionsfehler durch eine ROLLBACK-Anweisung Unzulässige Dateneingabe Nicht erfolgreiche DB-Operation

Mehr

Fehlerbehandlung (Recovery)

Fehlerbehandlung (Recovery) Fehlerbehandlung (Recovery) Fehlerbehandlung (Recovery) Fehlerklassifikation Fehlerarten Auswirkung der Speicherhierarchie Protokollierung von Änderungen Wiederanlauf nach Fehler ( Sicherungspunkte) Media-Recovery

Mehr

Übung zu Einführung in die Informatik # 10

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

Mehr

Zeiger in C und C++ Zeiger in Java und C/C++

Zeiger in C und C++ Zeiger in Java und C/C++ 1 Zeiger in Java und C/C++ Zeigervariable (kurz: Zeiger, engl.: pointer): eine Variable, die als Wert eine Speicheradresse enthält Java: Zeiger werden implizit für Referenztypen (Klassen und Arrays) verwendet,

Mehr

Datenbanken: Architektur & Komponenten 3-Ebenen-Architektur

Datenbanken: Architektur & Komponenten 3-Ebenen-Architektur Datenbanken: Architektur & Komponenten 3-Ebenen-Architektur Moderne Datenbanksysteme sind nach der 3-Ebenen-Architektur gebaut: Anwendung 1 Web-Anwendung Anwendung 2 Java-Programm... Anwendung n Applikation

Mehr

Grundlagen der Rechnerarchitektur. Speicher

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

Mehr

Datenbankanwendung. Prof. Dr.-Ing. Sebastian Michel TU Kaiserslautern. Wintersemester 2014/15.

Datenbankanwendung. Prof. Dr.-Ing. Sebastian Michel TU Kaiserslautern. Wintersemester 2014/15. Datenbankanwendung Wintersemester 2014/15 Prof. Dr.-Ing. Sebastian Michel TU Kaiserslautern smichel@cs.uni-kl.de Aufbau von und Zugriff auf Festplatte Aufbau einer (klassischen) Festplatte Zugriffskamm

Mehr

Wie groß ist die Page Table?

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

Mehr

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

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

Mehr

Physischer Datenbankentwurf: Datenspeicherung

Physischer Datenbankentwurf: Datenspeicherung Datenspeicherung.1 Physischer Datenbankentwurf: Datenspeicherung Beim Entwurf des konzeptuellen Schemas wird definiert, welche Daten benötigt werden und wie sie zusammenhängen (logische Datenbank). Beim

Mehr

Bedeutung der Metadateien. Alle Metadaten werden in Dateien gehalten. NTFS ist ein Journal-File-System

Bedeutung der Metadateien. Alle Metadaten werden in Dateien gehalten. NTFS ist ein Journal-File-System 6 Beispiel: Windows NT (NTFS) 6.3 Metadaten 6 Beispiel: Windows NT (NTFS) 6.3 Metadaten 6.3 Metadaten 6.3 Metadaten (2) Alle Metadaten werden in Dateien gehalten Indexnummer 0 1 2 3 4 5 6 7 8 16 17 MFT

Mehr

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

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

Mehr

Verteilte Systeme. Verteilte Systeme. 5 Prozeß-Management SS 2016

Verteilte Systeme. Verteilte Systeme. 5 Prozeß-Management SS 2016 Verteilte Systeme SS 2016 Universität Siegen rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404 Stand: 31. Mai 2016 Betriebssysteme / verteilte Systeme Verteilte Systeme (1/14) i

Mehr

Alle Metadaten werden in Dateien gehalten

Alle Metadaten werden in Dateien gehalten 6 Beispiel: Windows NT (NTFS) 6.3 Metadaten 6.3 Metadaten Alle Metadaten werden in Dateien gehalten Indexnummer 0 1 2 3 4 5 6 7 8 16 17 MFT MFT Kopie (teilweise) Log File Volume Information Attributtabelle

Mehr

Wunschvorstellung der Entwickler vom Speicher

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

Mehr

Einführung in die Programmiersprache C

Einführung in die Programmiersprache C Einführung in die Programmiersprache C 9 I/O (2) Alexander Sczyrba Robert Homann Georg Sauthoff Universität Bielefeld, Technische Fakultät UNIX I/O UNIX I/O: ähnlich wie Standard-I/O, jedoch File-Deskriptoren

Mehr

Slotted Pages Wie ordnet man eine Menge von Sätzen auf eine Seite an? ffl Seite besteht aus drei Teilen fixer Seitenkopf (z.b. mit Seitennr, LSN) Slot

Slotted Pages Wie ordnet man eine Menge von Sätzen auf eine Seite an? ffl Seite besteht aus drei Teilen fixer Seitenkopf (z.b. mit Seitennr, LSN) Slot Satzverwaltung Aufgabe Abbildung von Sätzen auf Blöcken ffl Techniken der Satzadressierung TID Konzept (direkt) Zuordnungstabelle (indirekt) ffl Abbildung von Sätzen ffl Realisierung langer Felder" ffl

Mehr

Paging. Einfaches Paging. Paging mit virtuellem Speicher

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

Mehr

OPERATIONEN AUF EINER DATENBANK

OPERATIONEN AUF EINER DATENBANK Einführung 1 OPERATIONEN AUF EINER DATENBANK Ein Benutzer stellt eine Anfrage: Die Benutzer einer Datenbank können meist sowohl interaktiv als auch über Anwendungen Anfragen an eine Datenbank stellen:

Mehr

Grundlagen der Informatik III Wintersemester 2010/2011

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

Mehr

Betriebssysteme I WS 2017/18. Prof. Dr. Dirk Müller. 05a 64-/32-Bit-Architekturen

Betriebssysteme I WS 2017/18. Prof. Dr. Dirk Müller. 05a 64-/32-Bit-Architekturen Betriebssysteme I 05a 64-/32-Bit-Architekturen Prof. Dr. Dirk Müller Begriff Eine n-bit-architektur ist eine Prozessorarchitektur mit einer Wortbreite von n Bit. meist Zweierpotenzen: 8-, 16-, 32-, 64-Bit-Architekturen

Mehr

Tutorium Rechnerorganisation

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

Mehr

C für Java-Programmierer

C für Java-Programmierer Carsten Vogt C für Java-Programmierer ISBN-10: 3-446-40797-9 ISBN-13: 978-3-446-40797-8 Inhaltsverzeichnis Weitere Informationen oder Bestellungen unter http://www.hanser.de/978-3-446-40797-8 sowie im

Mehr

1 Windows 2000/XP (3.1, NT, 95, 98)

1 Windows 2000/XP (3.1, NT, 95, 98) 1 Windows 2000/XP (3.1, NT, 95, 98) 2 Der Anfang: MS-DOS Zielsetzung: Ein leichtes Betriebssystem für IBM-PCs mit lediglich einem Benutzer Abwärtskompatibel zu CP/M-80 von Digital Research Einführung 1981

Mehr

Lösung von Übungsblatt 2

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

Mehr

5.5.5 Der Speicherverwalter

5.5.5 Der Speicherverwalter 5.5.5 Der Speicherverwalter Speicherverwalter (memory manager) reagiert auf = im einfachsten Fall ein Systemprozess, der für die Umlagerung der Seiten (page swapping) zuständig ist (analog zum Umlagerer/Swapper)

Mehr

Lösung von Übungsblatt 5

Lösung von Übungsblatt 5 Lösung von Übungsblatt 5 Aufgabe 1 (Speicherverwaltung) 1. Bei welchen Konzepten der Speicherpartitionierung entsteht interne Fragmentierung? Statische Partitionierung f Dynamische Partitionierung Buddy-Algorithmus

Mehr

Kapitel 1 Grundlagen. Skript zur Vorlesung: Datenbanksysteme II Sommersemester Vorlesung: PD Dr. Peer Kröger

Kapitel 1 Grundlagen. Skript zur Vorlesung: Datenbanksysteme II Sommersemester Vorlesung: PD Dr. Peer Kröger LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS DATABASE Skript zur Vorlesung: Datenbanksysteme II Sommersemester 2016 Kapitel 1 Grundlagen Vorlesung: PD Dr. Peer Kröger http://www.dbs.ifi.lmu.de/cms/datenbanksysteme_ii

Mehr

C für Java- Programmierer

C für Java- Programmierer Carsten Vogt C für Java- Programmierer mit 59 Bildern, 36 Tabellen und 35 Aufgaben HANSER Inhalt 1 Einführung 13 Schnelleinstieg 14 1.1 C und Java von den Anfängen bis heute 15 1.1.1 Die Entwicklung von

Mehr

Freispeicherverwaltung Martin Wahl,

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

Mehr

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

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

Mehr

Überlaufbehandlung ohne Verkettung

Überlaufbehandlung ohne Verkettung 3.2 Statische Hash-Verfahren direkte Berechnung der Speicheradresse (Seitenadresse) eines Satzes über Schlüssel (Schlüsseltransformation) Hash-Funktion h: S {, 2,..., n} S = Schlüsselraum, n = Größe des

Mehr

[W, T4, D, 15] [start_transaction, T3] [W, T3, C, 30] [W, T4, A, 20] [commit, T4] [W, T2, D, 25] System Crash

[W, T4, D, 15] [start_transaction, T3] [W, T3, C, 30] [W, T4, A, 20] [commit, T4] [W, T2, D, 25] System Crash Übungen Aufgabe 1 Geben ist die folgende Logdatei: [start_transaction, T1] [W, T1, D, 20] [commit, T1] [checkpoint] [start_transaction, T2] [W, T2, B, 12] [start_transaction, T4] [W, T4, D, 15] [start_transaction,

Mehr