4 Systempuffer (Buffer Pool) Prof. Dr.-Ing. Wolfgang Lehner
|
|
- Hildegard Hofer
- vor 7 Jahren
- Abrufe
Transkript
1 4 Systempuffer (Buffer Pool) Prof. Dr.-Ing. Wolfgang Lehner
2 > Gliederung Arbeitsweise und Eigenschaften Dienste eines Systempuffers Suche im DB-Puffer Einsatz von Seitenreferenzstrings Working-Set Modell LRU-Stacktiefenverteilung Speicherzuteilung im Systempuffer Seitenersetzungsstrategien Prof. Dr.-Ing. Wolfgang Lehner Database System Architecture 2
3 > Einordnung in die Schichtenarchitektur Prof. Dr.-Ing. Wolfgang Lehner Database System Architecture 3
4 > Arbeitsweise und Eigenschaften Arbeitsweise und Rolle der Pufferverwaltung in einem DBS Lese- und Schreiboperationen werden über einen Systempuffer abgewickelt Puffer kann nur einen Bruchteil der gesamten Datenbank aufnehmen Puffer besteht aus Seitenstrukturierte Segmente (Adressräume) Pufferkontrollblock (Aufnahme von Verwaltungsinformation) Eigenschaften einer DBS Systempufferverwaltung im Prinzip: normale Pufferverwaltung mit diversen Verdrängungsstrategien aber: beim DB-Puffer ist der Nutzer bekannt (die darüberliegende Schicht!), so dass Anwendungswissen (Kontextwissen) in die Pufferverwaltung einfließen kann Lokalität als Maß für Seitenverdrängung LRU-Stacktiefe Working Set Modell Prof. Dr.-Ing. Wolfgang Lehner Database System Architecture 4
5 > Dienste eines Systempuffers Systematik der Aufrufe Bereitstellen (Logische Referenz) Bereitstellen der angeforderten Seite im Puffer; dabei evtl. Verdrängen einer älteren Seite gemäß der Ersetzungsstrategie und physisches Einlesen der neuen Seite FIX Festhalten einer Seite im Puffer, so dass die Adressierbarkeit des Seiteninhalts gewährleistet ist (oft mit Bereitstellen automatisch durchgeführt) UNFIX Aufheben eines FIX; macht die Seite frei für die Ersetzung Änderungsvermerk Eintragen eines Vermerks in die Seite, dass sie beim Verdrängen aus dem Puffer physische geschrieben werden muss evtl. Sicherstellen eines Before-Image, falls dies die Einbring-Strategie erfordert (der Änderungsvermerk muss VOR Ausführen der Änderung gemacht werden) Schreiben Sofortiges Ausschreiben der Seite aus dem Puffer in die Datenbank Prof. Dr.-Ing. Wolfgang Lehner Database System Architecture 5
6 > Vergleich mit BS-Funktionalität Seitenreferenz versus Adressierung nach einem FIX-Aufruf kann eine DB-Seite mehrfach bis zum UNFIX referenziert werden unterschiedliches Seitenreferenzverhalten andere Ersetzungsverfahren Dateipuffer des Betriebssystems als DB-Puffer Zugriff auf Dateipuffer ist teuer (SVC: supervisor call) DB-spezifische Referenzmuster können nicht mehr gezielt genutzt werden (z. B. zyklisch sequentielle oder baumartige Zugriffsfolgen) keine geeignete Schnittstelle für Pre-Fetching: aufgrund von Seiteninhalten oder Referenzmustern ist (teilweise) eine Voraussage des Referenzverhaltens möglich; durch Pre-Fetching lässt sich in solchen Fällen eine Leistungssteigerung erzielen Selektives Ausschreiben von Seiten zu bestimmten Zeitpunkten (z. B. für Logging) ist nicht immer möglich in existierenden Dateisystemen (globales sync ist zu teuer) --> DBVS muss eigene Pufferverwaltung realisieren Prof. Dr.-Ing. Wolfgang Lehner Database System Architecture 6
7 > Mangelnde Eignung des BS-Puffers Beispiel Natürlicher Verbund von Relationen A und B (zugehörige Folge von Seiten A i und B j ) Implementierung: Nested-Loop-Join Ablauf FIFO: A1 verdrängt, da älteste Seite im Puffer LRU: A1 verdrängt, da diese Seite im ersten Schritt beim Auslesen des Vergleichstuples benötigt wurde Problem A1 wird im nächsten Schritt gerade wieder benötigt Aufschaukeln : um A2 laden zu können, muss B1 entfernt werden (wird aber im nächsten Schritt wieder benötigt), usw. Prof. Dr.-Ing. Wolfgang Lehner Database System Architecture 7
8 > Allgemeine Arbeitsweise Anforderung Logische Seitenreferenz (Seite i aus Segment j) Fall 1: Seite im Puffer Geringer Aufwand (» 100 Instr.), um Seite zu finden Wartungsoperationen im PKB durchzuführen Pufferadresse an rufende Komponente zu Übergeben Fall 2: Seite nicht im Puffer Logische Seitenreferenz führt zu einer physischen Seitenreferenz. erfolglose Suche im Puffer zwei E/A-Vorgänge Auswahl einer Seite zur Verdrängung und Herausschreiben der Seite bei Änderungsvermerk (nur bei Speicherknappheit) neue Seite lesen Prof. Dr.-Ing. Wolfgang Lehner Database System Architecture 8
9 > Suche im DB-Puffer Forderung hoch effizient, da der Vorgang extrem häufig vorkommt! Suchstrategien Direkte Suche im Datenbankpuffer sequentielles Durchsuchen in jedem Seitenkopf wird nachgeprüft, ob die gesuchte Seite gefunden ist sehr hoher Suchaufwand Gefahr vieler Paging-Fehler bei virtuellen Speichern Indirekte Suche über Hilfsstrukturen (ein Eintrag pro Seite im Puffer) unsortierte oder sortierte Tabelle Tabelle mit verketteten Einträgen Suchbäume (z. B. AVL-, m-weg-bäume) Hash-Tabelle mit berlaufketten Prof. Dr.-Ing. Wolfgang Lehner Database System Architecture 9
10 > Tabellenbasierte Suchstrategien Prof. Dr.-Ing. Wolfgang Lehner Database System Architecture 10
11 > Hashverfahren zur Suche im DB-Puffer Prinzip Seitennummern werden über Hashfunktion auf Pufferadresse abgebildet Synonyme werden verkettet Ein-/Auslagern einer Seite impliziert Ein-/Austragen des entsprechenden Eintrags Prof. Dr.-Ing. Wolfgang Lehner Database System Architecture 11
12 > Bewertung Suchstrategien Direkte Suche nicht praktikabel Unsortierte Tabelle Aufwand im Erfolgsfall: N/2 Einträge Aufwand bei Misserfolg: N Einträge Sortierte Tabelle Aufwand bei Misserfolg: log 2 N Einfüge- und Löschoperationen sehr aufwendig Tabelle mit verketteten Einträgen gute Lösch- und Einfügeeigenschaften Aufwand bei Misserfolg: N/2 Vorteil: kann zu LRU Reihenfolge verkettet werden Hashverfahren beste Lösung Prof. Dr.-Ing. Wolfgang Lehner Database System Architecture 12
13 > SYSTEMPUFFER SPEICHERZUTEILUNG Besonderheiten Datenbankseiten können gemeinsam benutzt werden (lesende) Zugriffe auf dieselbe Seite sind durch mehrere Benutzer möglich Lokalität kommt nicht durch das Zugriffsverhalten eines, sondern aller Benutzer (Transaktionen) zustande Zugriffe einzelner sind weitgehend sequentiell unterschiedliche Behandlung von Datenseiten und Zugriffspfadverwaltungsseiten mit jeweils spezifischer Lokalität Prof. Dr.-Ing. Wolfgang Lehner Database System Architecture 13
14 > Lokale Speicherzuteilung nur das aktuelle Referenzverhalten einer Transaktion wird berücksichtigt und Partitionen im Puffer werden gebildet Globale Speicherzuteilung der gesamte Puffer steht allen aktiven Transaktionen gemeinsam zur Verfügung Die Speicherzuteilung wird vollständig durch die Ersetzungsstrategie bestimmt Seitenbezogene (oder seitentypbezogene) Speicherzuteilung für Datenseiten, Zugriffspfadseiten, Seiten der Freispeicherverwaltung usw. werden jeweils eigene Partitionen im Puffer gebildet Statische Speicherzuteilung eine erforderliche Menge von Rahmen (Partition) muss verfügbar sein, bevor die Transaktion gestartet wird (preclaiming). Uninteressant in DBS. Dynamische Speicherzuteilung Seiten werden zwischen Partitionen ausgetauscht (variable Partitionen) Beispiel Working-Set-Strategie: es wird versucht, einer Transaktion ihren Working-Set zur Verfügung zu halten (Wahl von t ist der kritische Faktor!) Prof. Dr.-Ing. Wolfgang Lehner Database System Architecture 14
15 > DB2 Memory Model Prof. Dr.-Ing. Wolfgang Lehner Database System Architecture 15
16 > DB2 Memory Model (2) Prof. Dr.-Ing. Wolfgang Lehner Database System Architecture 16
17 > DB2 Memory Model (3) Database Manager Shared Memory Set Stores all relevant information for a particular instance, such as lists of all active connections and security information Database Shared Memory Set Stores information relevant to a particular database, such as package caches, log buffers, and bufferpools Application Shared Memory Set Stores information that is shared between DB2 and a particular application, primarily rows of data being passed to or from the database Agent Private Memory Set Stores information that is used by DB2 to service a particular application, such as sort heaps, cursor information, and session contexts Prof. Dr.-Ing. Wolfgang Lehner Database System Architecture 17
18 > Memory-Management (Oracle) PGA (Program Global Area): individuell für jeden Datenbankprozess SGA (System Global Area): gemeinsamer Bereich für alle Prozesse bestimmt durch SGA_MAX_SIZE Prof. Dr.-Ing. Wolfgang Lehner Database System Architecture 18
19 > I/O-Cleaners Idee spezifische Threads, die Seiten laden bzw. verdrängen Parameter Anteil an dirty pages im Systempuffer Protokollierungsaufwand für Wiederherstellung nach System-Crash Prof. Dr.-Ing. Wolfgang Lehner Database System Architecture 19
20 > Seitenersetzungsstrategien Klassifikation Grundannahme Referenzverhalten der nächsten Zukunft ist ähnlich dem der jüngsten Vergangenheit Prefetching: Index Prefetch, Sequential Prefetch, List Prefetch of data pages Prof. Dr.-Ing. Wolfgang Lehner Database System Architecture 20
21 > Übersicht zur Seitenersetzung Prof. Dr.-Ing. Wolfgang Lehner Database System Architecture 21
22 > Realisierbare Ersetzungsstrategien Eingrenzung obere Grenze: RANDOM untere Grenze: OPT (nach Belady) Wirkradius abhängig von der Speicherallokation Prof. Dr.-Ing. Wolfgang Lehner Database System Architecture 22
23 > Qualifikationsfragen Alter einer Seite gemessen in logischen Referenzen, nicht in Zeiteinheiten Entscheidungskriterien für eine Ersetzungsstrategie Alter einer Seite Alter seit der Einlagerung (globale Strategie) Alter seit dem letzten Referenzzeitpunkt (Strategie des jüngsten Verhaltens) Alter wird nicht berücksichtigt Referenzierung einer Seite Berücksichtigung aller Referenzen (globale Strategie) Berücksichtigung der letzten Referenzen (Strategie des jüngsten Verhaltens) Berücksichtigung keiner Referenz Ziel Annäherung an optimale Strategie Prof. Dr.-Ing. Wolfgang Lehner Database System Architecture 23
24 > Klassifikation gängiger Strategien Prof. Dr.-Ing. Wolfgang Lehner Database System Architecture 24
25 > FIFO (First In First Out) Ersetzung der ältesten Seite im DB-Puffer Veranschaulichung durch kreisförmig umlaufenden Uhrzeiger Zeiger zeigt auf älteste Seite Bei Fehlseitenbedingung wird diese Seite ersetzt und der Zeiger auf die nächste Seite fortgeschaltet Merkmale Unabhängigkeit vom Referenzverhalten (nur das Alter seit der Einlagerung ist entscheidend) Bewertung + bei strikt sequentiellem Zugriffsverhalten - bei Direktzugriff (häufig benutzte Seiten sollen ja gerade im Puffer bleiben und dort alt werden) Erweiterung: CLOCK, GCLOCK und DGCLOCK Prof. Dr.-Ing. Wolfgang Lehner Database System Architecture 25
26 > LFU (Least-Frequently-Used) Ersetzung der Seite mit niedrigster Referenzhäufigkeit Führen eines Referenzzählers pro Seite im DB-Puffer Merkmale nur Referenzverhalten geht ein, nicht das Alter! mögliche Pattsituationen müssen durch eine Sekundärstrategie aufgelöst werden beim sequentiellen Lesen wird jede Seite einmal referenziert Strategie nicht anwendbar Bewertung + häufig benutzte Seiten werden im Puffer gehalten - Seiten, die punktuell sehr intensiv benutzt werden und dann nicht mehr, sind praktisch nicht zu verdrängen Prof. Dr.-Ing. Wolfgang Lehner Database System Architecture 26
27 > LRU (Least-Recently-Used) Ersetzung der Seite, die am längsten nicht mehr referenziert wurde Seiten werden als LRU-Stack verwaltet bei jeder Referenz kommt die Seite in die oberste Position Merkmale bewertet das Alter seit der letzten Referenz, nicht seit dem Einlagern geht bei sequentiellem Zugriff in FIFO über Prof. Dr.-Ing. Wolfgang Lehner Database System Architecture 27
28 > LRUN versus LRR Beachte Besonderheit der letzten Referenz beim DB-Puffer logische Referenz unfix-operation Zwei Varianten bei der Realisierung von LRU Least Recently Unfixed (LRUN) Least Recently Referenced (LRR) Beispiel Zum Zeitpunkt t 1 wird ersetzt bei Least Recently Unfixed: Seite B Least Recently Referenced: Seite A Prof. Dr.-Ing. Wolfgang Lehner Database System Architecture 28
29 > LRU-K Idee Verbesserung durch Berücksichtigung der letzten K Referenzierungszeitpunkte Bestimmung des mittleren Zeitabstands zwischen den letzten K Referenzen K-Distanz b t (p,k): LRU-K-Alter Zeit t, Referentierungsfolge r 1, r 2,..., r t b t (p,k) ist Rückwärtsdistanz von t zur K-ten Referenz b t (p,k) = Ersetzung der Seite p mit b t (p,k) ist maximal Bewertung berücksichtigt aktuelle Referenzierungen häufiger als ältere LRU-1 entspricht LRU typisch: LRU-2 Prof. Dr.-Ing. Wolfgang Lehner Database System Architecture 29
30 > Seitenreferenzstrings Zeitliche Abfolge von Seitenanforderungen Logische Seitenanforderungen -> Logische Seitenreferenzstrings Physische Seitenanforderungen -> Physische Seitenreferenzstrings Problem Erzeugung eines optimalen physischen Seitenreferenzstrings (minimale Anzahl von Zugriffen) nicht alle Seiten im Datenbankpuffer sind auch im physischen Hauptspeicher! Typische Referenzmuster Sequentielle Suche (Bsp.: Durchsuchen ganzer Datenbestände) Hierarchische Pfade (Bsp.: Suchen in baumstrukturierten Zugriffspfaden) Zyklische Pfade (Bsp.: Abarbeiten von Mengen) Prof. Dr.-Ing. Wolfgang Lehner Database System Architecture 30
31 > Beispiel: Seitenreferenzverhalten Relative Referenzmatrix (Seitenbenutzungsstatistik) 12 TransaktionsTypen (TT1-TT12) auf 13 DB-Partitionen (P1-P13) ca Transaktionen, 1Million Seitenreferenzen auf ca versch. Seiten Prof. Dr.-Ing. Wolfgang Lehner Database System Architecture 31
32 > Beispiel: Referenzdichte Prozentuale Verteilung der Referenzen auf Seiten unterschiedlichen Typs Prof. Dr.-Ing. Wolfgang Lehner Database System Architecture 32
33 > Lokalität Prinzip der Lokalität erhöhte Wiederbenutzungswahrscheinlichkeit für schon einmal referenzierte Seiten Zugriff immer nur auf eine kleine Untermenge der im Adressraum vorhandenen Seiten grundlegende Voraussetzung für effektive DB-Pufferverwaltung (Seitenersetzung) Einsatz von Speicherhierarchien unterschiedliche Lokalitätsmaße Working-Set-Modell LRU-Stacktiefe -> notwendig für partitionsorientierte Speicherzuteilung! Prof. Dr.-Ing. Wolfgang Lehner Database System Architecture 33
34 > Working-Set-Modell Begriffsbildung Working-Set W(t, t) ist Menge der verschiedenen Seiten, die von dem betrachteten Programm innerhalb seiner t letzten Referenzen, vom Zeitpunkt t aus rückwärts gerechnet, angesprochen wurden. Fenstergröße (window size): Working-Set-Größe: (n = Länge des Referenzstrings) t w( t, t ) W( t, t ) w( t, t ) Aktuelle Lokalität: AL( t, t ) t n 1 Durchschnittliche Lokalität: L( t ) AL( t, t ) n t 1 Prof. Dr.-Ing. Wolfgang Lehner Database System Architecture 34
35 > Working-Set-Modell (2) Beispiele für Working Sets Prof. Dr.-Ing. Wolfgang Lehner Database System Architecture 35
36 > Dynamische Pufferallokation am Beispiel des Working-Set-Ansatzes pro Pufferpartition P soll der Working-Set im Puffer bleiben Seiten, die nicht zum Working-Set gehören, können ersetzt werden Verdrängung bei Fehlseitenbedingung muss Working-Set bekannt sein, um Ersetzungskandidat zu bestimmen Fenstergröße (Window Size) 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) gilt Fenstergröße kritischer Parameter -> Thrashing-Gefahr Prof. Dr.-Ing. Wolfgang Lehner Database System Architecture 36
37 > LRU-Stacktiefenverteilung Prinzip 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 Prof. Dr.-Ing. Wolfgang Lehner Database System Architecture 37
38 > Problem: Virtueller Adressraum Page Fault Die benötigte Seite befindet sich zwar im DB-Puffer, die Pufferseite ist aber gerade ausgelagert. Das Betriebssystem muss die referenzierte Seite vom Hintergrundspeicher einlesen. Prof. Dr.-Ing. Wolfgang Lehner Database System Architecture 38
39 > Problem: Virtueller Adressraum (2) Database Fault Die benötigte Seite wird nicht im DB-Puffer aufgefunden. Die zu ersetzende Pufferseite befindet sich jedoch im Hauptspeicher, so dass sie freigegeben und bei Bedarf zurückgeschrieben werden kann. Die angeforderte Seite wird dann von der Datenbank eingelesen. Prof. Dr.-Ing. Wolfgang Lehner Database System Architecture 39
40 > Problem: Virtueller Adressraum (3) Double Page Fault Die benötigte Seite wird nicht im DB-Puffer aufgefunden Die zur Ersetzung ausgewählte Seite befindet sich nicht im Hauptspeicher. In diesem Fall muss zunächst die zu ersetzende Seite durch das Betriebssystem bereitgestellt werden, bevor ihre Freigabe und das Einlesen der angeforderten Seite erfolgen kann. Prof. Dr.-Ing. Wolfgang Lehner Database System Architecture 40
41 > Zusammenfassung Eigenschaften eines DB-Systempuffers Nutzung von Kontextwissen zur Ermittlung der Ersetzungskandidaten Lokalität durch Working-Set Modell oder LRU-Stacktiefenverteilung Algorithmen Suche einer Seite im Systempuffer Ermittlung der zu verdrängenden Seite Ersetzungsstrategien klassisch... wichtiger Unterschied: FIX und UNFIX-Semantik unterschiedlich zu einfacher Referenz! Prof. Dr.-Ing. Wolfgang Lehner Database System Architecture 41
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
4. DBS-Pufferverwaltung
4. DBS-Pufferverwaltung llgemeine Charakteristika blauf des Pufferzugriffs Referenzstrings, Stacktiefenverteilung Speicherzuteilung im Puffer Suche im Puffer Schreibstrategien (Force vs. Noforce) Lesestrategien
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
3. DB-Pufferverwaltung
3. DB-Pufferverwaltung Rolle der DB-Pufferverwaltung 1 - Ablauf des Zugriffs auf den DB-Puffer - logische und physische Seitenreferenzen Speicherzuteilung im DB-Puffer Suche im DB-Puffer Seitenersetzungsverfahren
3. DB-Pufferverwaltung
. DB-Pufferverwaltung Ziel: Realisierung einer effizienten, seitenbasierten Verarbeitungsplattform im Hauptspeicher - größtmögliche Vermeidung von physischer Ein-/Ausgabe - Ersetzungsverfahren ohne und
Datenbanksysteme II a
3 ABBILDUNG VON SEITEN UND SEGMENTEN AUF BLÖCKE Datenbanksysteme II a Einordnung im vereinfachten Schichtenmodell deskriptive Anfragen Zugriff auf Satzmengen Institut für Informatik Dr.-Ing. Wolfgang Lehner
3. DB-Pufferverwaltung
. DB-Pufferverwaltung Rolle der DB-Pufferverwaltung in einem Datenbanksystem Ziel: Realisierung einer effizienten, seitenbasierten Verarbeitungsplattform im Hauptspeicher - größtmögliche Vermeidung von
Realisierung eines Dateisystems. Blockzuordnung bei Magnetplatten
Ü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
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
3. Speichersystem / Pufferverwaltung
3. Speichersystem / Pufferverwaltung Dateiverwaltung Direkte vs. indirekte Seitenzuordnung Segmentkonzept direkte vs. indirekte Einbringstrategien DB-Pufferverwaltung: Grundlagen allgemeine Merkmale Speicherzuteilung
3. Speichersystem / Pufferverwaltung
3. Speichersystem / Pufferverwaltung Dateiverwaltung Direkte vs. indirekte Seitenzuordnung Segmentkonzept Indirekte Einbringstrategien DB-Pufferverwaltung: Grundlagen Allgemeine Charakteristika Speicherzuteilung
3. Speichersystem / Pufferverwaltung
3. Speichersystem / Pufferverwaltung Dateiverwaltung Direkte vs. indirekte Seitenzuordnung Segmentkonzept Indirekte Einbringstrategien DB-Pufferverwaltung: Grundlagen Allgemeine Charakteristika Speicherzuteilung
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
3. Speichersystem / Pufferverwaltung
3. Speichersystem / Pufferverwaltung Dateiverwaltung Direkte vs. indirekte Seitenzuordnung Segmentkonzept Indirekte Einbringstrategien DB-Pufferverwaltung: Grundlagen Allgemeine Charakteristika Speicherzuteilung
Physische Datenorganisation
Physische Datenorganisation Speicherhierarchie Hintergrundspeicher / RAID ( B-Bäume Hashing R-Bäume ) Kapitel 7 1 Überblick: Speicherhierarchie Register Cache Hauptspeicher Plattenspeicher Archivspeicher
Sharing und invertierte Seitentabellen
Sharing und invertierte Seitentabellen Adressräume Seite Kachel / Rahmen MMU Hardware schwierig, da nur eine virtuelle Adresse pro Kachel Hauptspeicher z. B. 512 MB Betriebssysteme WS 2012, Speicher 68
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
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
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
(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
(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
Betriebssysteme Kap J, Teil C: Paging, Pagereplacement
Betriebssysteme Kap J, Teil C: Paging, Pagereplacement 1 Welche Seite soll ausgelagert werden? Ein- / Auslagern benötigt Zeit Kontextwechsel erforderlich» Wechsel zu einem BS-Prozess, welcher für das Management
Virtueller Speicher WS 2011/2012. M. Esponda-Argüero
Virtueller Speicher WS / Virtuelle Speicher Bis jetzt sind wir davon ausgegangen, dass Prozesse komplett im Hauptspeicher gelagert werden. Speicherreferenzen sind nur logische Adressen, die dynamisch in
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)
3. DB-Pufferverwaltung
. DB-Pufferverwaltung Ziel: Realisierung einer effizienten, seitenbasierten Verarbeitungsplattform im Hauptspeicher - größtmögliche Vermeidung von physischer Ein-/Ausgabe - Ersetzungsverfahren ohne und
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
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
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
Betriebssysteme I WS 2016/2017. Betriebssysteme / verteilte Systeme Tel.: 0271/ , Büro: H-B 8404
Betriebssysteme I WS 2016/2017 Betriebssysteme / verteilte Systeme rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404 Stand: 2. Februar 2017 Betriebssysteme / verteilte Systeme Betriebssysteme
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
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
é 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
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
Übung Praktische Informatik II
Übung Praktische Informatik II FSS 2009 Benjamin Guthier Lehrstuhl für Praktische Informatik IV Universität Mannheim guthier@pi4.informatik.uni-mannheim.de 22.05.09 11-1 Heutige große Übung Ankündigung
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
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
5. Aufgabenblatt Speicherverwaltung
Faculty of Computer Science Institute for System Architecture, Operating Systems Group Betriebssysteme und Sicherheit, WS 0/. Aufgabenblatt Speicherverwaltung Geplante Bearbeitungszeit: drei Wochen Aufgabe.
Betriebssysteme (BS)
Betriebssysteme (BS) Virtueller Speicher Olaf Spinczyk Arbeitsgruppe Eingebettete Systemsoftware Lehrstuhl für Informatik 2 TU Dortmund Olaf.Spinczyk@tu-dortmund.de http://ess.cs.uni-dortmund.de/~os/ In
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.
Ü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),
Betriebssysteme Teil 10 B: Fragen rund um Seitenfehler
Betriebssysteme Teil 10 B: Fragen rund um Seitenfehler 1 Überlegungen Wenn wir einige Seiten eines Programms in den Speicher laden, brauchen wir eine Strategie, welche Seiten als nächstes geladen werden
Cache Blöcke und Offsets
Cache Blöcke und Offsets Ein Cache Eintrag speichert in der Regel gleich mehrere im Speicher aufeinander folgende Bytes. Grund: räumliche Lokalität wird wie folgt besser ausgenutzt: Bei Cache Miss gleich
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
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
Teil VII. Hashverfahren
Teil VII Hashverfahren Überblick 1 Hashverfahren: Prinzip 2 Hashfunktionen 3 Kollisionsstrategien 4 Aufwand 5 Hashen in Java Prof. G. Stumme Algorithmen & Datenstrukturen Sommersemester 2009 7 1 Hashverfahren:
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
5.5 Virtueller Speicher
5.5 Virtueller Speicher Wenn der reale Speicher sogar für einzelne Prozesse zu klein ist : Virtueller Speicher (virtual memory), ist beliebig groß, nimmt alle Prozesse auf, ist in gleichgroße Teile Seiten
, 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
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
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.
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
Suchbäume. Suchbäume. Einfügen in Binären Suchbäumen. Suchen in Binären Suchbäumen. Prinzip Suchbaum. Algorithmen und Datenstrukturen
Suchbäume Suchbäume Prinzip Suchbaum Der Wert eines Knotens wird als Schlüssel verstanden Knoten kann auch weitere Daten enthalten, die aber hier nicht weiter betrachtet werden Werte der Schlüssel müssen
Übung zu Grundlagen der Betriebssysteme. 14. Übung
Übung zu Grundlagen der Betriebssysteme 14. Übung 29.01.2012 Aufgabe 1 Demand Paging a) Was wird unter dem Begriff Demand Paging verstanden? b) Was sind Vor- und Nachteile des Demand Paging? Bei Demand
Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung
Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung Version 21.12.2016 1 Inhalt Vorlesung Aufbau einfacher Rechner Überblick: Aufgabe, Historische Entwicklung, unterschiedliche Arten von Betriebssystemen
Schreiben von Pages. Schreiben einer Page in den Swap Space ist sehr teuer (kostet millionen von CPU Zyklen).
Schreiben von Pages Schreiben einer Page in den Swap Space ist sehr teuer (kostet millionen von CPU Zyklen). Write Through Strategie (siehe Abschnitt über Caching) ist hier somit nicht sinnvoll. Eine sinnvolle
Freispeicherverwaltung
Freispeicherverwaltung Allgemeine Techniken und Anwendung unter Linux Martin Wahl, 17.11.03 Freispeicherverwaltung 1 Überblick Allgemeines Suchstrategien Verwaltungsstrategien externer / interner Verschnitt
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
Physische Datenorganisat
Physische Datenorganisat Speicherhierarchie Hintergrundspeicher / RAID B-Bäume Hashing (R-Bäume ) Objektballung Indexe in SQL Kapitel 7 1 Überblick: Speicherhierarchie Register Cache Hauptspeicher Plattenspeicher
Physische Datenorganisat
Physische Datenorganisat Speicherhierarchie Hintergrundspeicher / RAID B-Bäume Hashing (R-Bäume ) Objektballung Indexe in SQL Überblick: Speicherhierarchie 1 8 Byte Compiler Register 8 128 Byte Cache Cache-Controller
Lösungsvorschlag für Übung 3 1. Oktober 2010
Universität Mannheim Vorlesung Betriebssysteme Lehrstuhl für Praktische Informatik 1 Herbstsemester 2010 Prof. Dr. Felix Freiling Dipl.-Inform. Jan Göbel Dynamische Seitenersetzung Aufgabe 1 Gegeben sei
Mehrwegbäume Motivation
Mehrwegbäume Motivation Wir haben gute Strukturen (AVL-Bäume) kennen gelernt, die die Anzahl der Operationen begrenzen Was ist, wenn der Baum zu groß für den Hauptspeicher ist? Externe Datenspeicherung
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
Konzepte von Betriebssystemkomponenten Disk-Caches und Dateizugriff
Konzepte von Betriebssystemkomponenten Disk-Caches und Dateizugriff von Athanasia Kaisa Grundzüge eines Zwischenspeichers Verschiedene Arten von Zwischenspeicher Plattenzwischenspeicher in LINUX Dateizugriff
Neue Speichermedien für Datenbanken
Projektpräsentation im Wahlmodul Datenbank Implementierungstechniken 10. Juli 2015 Inhalt 1 Flash Memory (SSD) vs. Main Memory (DRAM) 2 Auswirkungen auf DBS-System 3 Kennzahlen 4 Aspekte von Green IT 5
Hauptspeicherverwaltung - Memory Management
Hauptspeicherverwaltung - Memory Management Operating Systems I SS21 Prof. H.D.Clausen - unisal 1 Speicherhierarchie Verarbeitung cache Sekundär- Speicher Primär- Speicher ALU SS21 Prof. H.D.Clausen -
Datenbanksystem. System Global Area. Hintergrundprozesse. Dr. Frank Haney 1
Datenbanksystem System Global Area Hintergrundprozesse Dr. Frank Haney 1 Komponenten des Datenbanksystems System Global Area Program Global Area Hintergrundprozesse Dr. Frank Haney 2 System Global Area
Rückblick: Pufferverwaltung
Rückblick: Pufferverwaltung Datenbankpuffer zum Schließen der Zugriffslücke zwischen Primär- und Sekundärspeicher Ersetzungsstrategien berücksichtigen Zeitpunkte und/oder Anzahl der Zugriffe auf bestimmte
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
1. Welche Speichereinheiten werden belegt, wenn die folgenden Strategien eingesetzt werden?
Sommersemester 009 Konzepte und Methoden der Systemsoftware Universität Paderborn Fachgebiet Rechnernetze Hausübung 05 Abgabe am 0.07.009 (Kästen D) Aufgabe : Speicherzuteilung (6++=8 Punkte) Es sei der
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
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
Systemsoftware (SYS) Fakultät für Informatik WS 2007/2008 Christian Baun. Übungsklausur
Hochschule Mannheim Systemsoftware (SYS) Fakultät für Informatik WS 2007/2008 Christian Baun Übungsklausur Aufgabe 1: Definieren Sie den Begriff der Systemsoftware. Nennen Sie die Aufgaben und Komponenten
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
Algorithmen II Vorlesung am
Algorithmen II Vorlesung am 24.01.2013 Online Algorithmen INSTITUT FÜR THEORETISCHE INFORMATIK PROF. DR. DOROTHEA WAGNER KIT Universität des Landes Baden-Württemberg und Algorithmen nationales Forschungszentrum
Ü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
IR Seminar SoSe 2012 Martin Leinberger
IR Seminar SoSe 2012 Martin Leinberger Suchmaschinen stellen Ergebnisse häppchenweise dar Google: 10 Ergebnisse auf der ersten Seite Mehr Ergebnisse gibt es nur auf Nachfrage Nutzer geht selten auf zweite
Seminarvortrag Swapping Schwerpunkt Linux
Seminarvortrag Swapping Schwerpunkt Linux Konzepte von Betriebssystem- Komponenten (KVBK) Thomas Mayer Betriebssystem-Komponenten KVBK 1 Gliederung Was ist Swapping? Aufbau eines Swapbereiches Swapcache
Konzepte von Betriebssystem- Komponenten Olessia Usik 20. Juni 2005
Konzepte von Betriebssystem- Komponenten Olessia Usik olessia@freenet.de 20. Juni 2005 1 GROß 2 SCHNELL UNENDLICH Gliederung 1. Einleitung 2. Swapping 3. Virtuelle Speicherverwaltung 3.1 Segmentorientierter
Linux Paging, Caching und Swapping
Linux Paging, Caching und Swapping Inhalte Paging Das Virtuelle Speichermodell Die Page Table im Detail Page Allocation und Page Deallocation Memory Mapping & Demand Paging Caching Die verschiedenen Caches
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
Inhaltsverzeichnis. 6.6 Diskussion der Paging-Algorithmen. 6.1 Hauptspeicherverwaltung. 6.2 Segmentierung. 6.3 Buddy-Systeme. 6.
Inhaltsverzeichnis /8 6. Hauptspeicherverwaltung - Speicherhierarchie - Virtueller Speicher 6. Segmentierung - Segmentierungsstrategien - Vergleich der Strategien 6. Buddy-Systeme - Adressierung - Gewichtete
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
9) Speicherverwaltung
Inhalte Speicherhierarchien Speicherzuteilung Adressbildung Lineare Adressbildung mit statischer/dynamischer Zuteilung (Segmentierung) Kompaktifizierung Lineare Adressbildung mit virtueller Adressierung
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
Komponenten der Zugriffszeit
Kapazität vs. Geschwindigkeit vs. Preis Typische Kapazität großer Systeme (Bytes Petabyte 0 5 0 3 Terabyte 0 Gigabyte 0 9 0 7 Megabyte 0 5 Kilobyte 0 3 Hauptsp. Cache Kapazität vs Geschwindigkeit Sekundärsp.
Linker: Adreßräume verknüpfen. Informationen über einen Prozeß. Prozeß-Erzeugung: Verwandtschaft
Prozeß: drei häufigste Zustände Prozeß: anatomische Betrachtung jeder Prozeß verfügt über seinen eigenen Adreßraum Sourcecode enthält Anweisungen und Variablen Compiler überträgt in Assembler bzw. Binärcode
Kapitel 8: Physischer Datenbankentwurf
8. Physischer Datenbankentwurf Seite 1 Kapitel 8: Physischer Datenbankentwurf Speicherung und Verwaltung der Relationen einer relationalen Datenbank so, dass eine möglichst große Effizienz der einzelnen
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?
Einführung in die technische Informatik
Einführung in die technische Informatik Christopher Kruegel chris@auto.tuwien.ac.at http://www.auto.tuwien.ac.at/~chris Betriebssysteme Aufgaben Management von Ressourcen Präsentation einer einheitlichen
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
Adreßräume. Motivation. Seitenersetzung (Paging) Systemsoftware. = Referenzlokalität. Seite 2.1. Instruktionen werden wiederholt ausgeführt
Adreßräume Seitenersetzung (Paging) Motivation Instruktionen werden wiederholt ausgeführt Variablen werden wiederholt referenziert Gründe: Sequentielle Ausführung überwiegt Tatsächliche Prozedurverschachtelung