Freispeicherverwaltung

Ähnliche Dokumente
Kapitel 11: Speicherverwaltung

Konzepte von Betriebssystemkomponenten Disk-Caches und Dateizugriff

Virtueller Speicher. SS 2012 Grundlagen der Rechnerarchitektur Speicher 44

Der Slab Allocator. Vortrag im Rahmen des Proseminars Linux Kernel Internals. Uni Karlsruhe WS 2004/2005. Autor: Sven Krohlas

Buddy - Algorithmus Handbuch für Endnutzer Stand

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

Kapitel VI. Speicherverwaltung. Speicherverwaltung

Enterprise Computing Einführung in das Betriebssystem z/os. Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth WS2012/13

Einführung in die technische Informatik

Von der Platte zur Anwendung (Platte, Treiber, Dateisystem)

Einführung in die Programmierung Laborübung bei Korcan Y. Kirkici. 12.Übung bis

OPERATIONEN AUF EINER DATENBANK

wichtigstes Betriebsmittel - neben dem Prozessor: Speicher

Was machen wir heute? Betriebssysteme Tutorium 12. Organisatorisches. Frage 12.1.a. Programmieraufgaben Vorstellung. Antwort

Wiederholung: Realisierung von Dateien

Einführung in die Informatik: Programmierung und Software-Entwicklung, WS 11/12. Kapitel 13. Bäume. Bäume

Deklarationen in C. Prof. Dr. Margarita Esponda

Proseminar C-Programmierung. Strukturen. Von Marcel Lebek

Kapitel 6 Speicherverwaltung Seite 1 zum Teil nach: Silberschatz&Galbin, Operating System Concepts, Addison-Wesley)

Sicherheit von PDF-Dateien

PROGRAMMIEREN MIT C. }, wird kompiliert mit dem Befehl. (-o steht für output) und ausgeführt mit dem Befehl

Folge 19 - Bäume Binärbäume - Allgemeines. Grundlagen: Ulrich Helmich: Informatik 2 mit BlueJ - Ein Kurs für die Stufe 12

! DBMS organisiert die Daten so, dass minimal viele Plattenzugriffe nötig sind.

Modellierung und Programmierung 1

Welche der folgenden Aussagen gelten? a) Im allgemeinen gilt: ein Deadlock tritt auf gdw. der Resource-Allocation Graph einen Zykel

Konzepte zur Datenhaltung für Webseiten in einem Web-Content- Management-System

2. Darstellung von Information im Computer

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

4. Übung - Betriebssysteme

Grundlagen der Informatik. Prof. Dr. Stefan Enderle NTA Isny

Lösungsskizzen zur Abschlussklausur Betriebssysteme

Tag 9: Datenstrukturen

Klausur zur Mikroprozessortechnik

Mitarbeiterverwaltung:

Verteilte Systeme - 2. Übung

4.3 Hintergrundspeicher

Kompetitive Analysen von Online-Algorithmen

Speicher Virtuelle Speicherverwaltung. Speicherverwaltung

Algorithmen & Datenstrukturen 1. Klausur

1 Einleitung. 1.1 Caching von Webanwendungen Clientseites Caching

5.5.8 Öffentliche und private Eigenschaften

Dr. Monika Meiler. Inhalt

STORAGE. Martin Schmidt Berufsschule Obernburg

Alle Speicherplatinen können als Programm- bzw. Arbeitsspeicher

Memory Management. Peter Puschner Institut für Technische Informatik

Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung. Maren Bennewitz

Name: ES2 Klausur Thema: ARM Name: Punkte: Note:

Betriebssysteme WS 2012/13 Peter Klingebiel, DVZ. Zusammenfassung Kapitel 4 - Datenträger/Dateiverwaltung

Btrfs. Linux-Dateisystem der Zukunft? Thomas Schöbel 1 / 20

Übung zu Grundlagen der Betriebssysteme. 13. Übung

Datenbanken II Speicherung und Verarbeitung großer Objekte (Large Objects [LOBs])

Objektrelationale und erweiterbare Datenbanksysteme

Zugriff auf die Modul-EEPROMs

Betriebssysteme Kap A: Grundlagen

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

Arrays Fortgeschrittene Verwendung

Grundlagen der Programmiersprache C++

Datenschutzerklärung ENIGO

Lokales Storage Teil 1

Anleitung NEUES RELEASE

Einführung in die Informatik 1

Reihungen. Martin Wirsing. in Zusammenarbeit mit Matthias Hölzl und Nora Koch 11/03

Übersicht. UNIX-Dateisystem (ext2) Super-User unter Linux werden MSDOS: FAT16 und FAT32

Banner T 1 T 2. Bild T 7 T 8. Fließtext T 9

6.2 FAT32 Dateisystem

Javakurs für Anfänger

Seminar Grid Computing

Nachholklausur Informatik II

5.4 Klassen und Objekte

Applet Firewall und Freigabe der Objekte

Die allerwichtigsten Raid Systeme

Bayeux. Dirk Ewerlin

Lerndokumentation. Arbeitsspeicher. Lerndokumentation Arbeitsspeicher. Ausbildung Vorlehre Informatik. Autor: Ramon Schenk

Implementierung von Dateisystemen

Kapitel 8 EIB-Netzwerke

Thema: Systemsoftware

Algorithmen und Datenstrukturen

2. Braunschweiger Linux-Tage. Vortrag über RAID. von. Thomas King Braunschweiger Linux-Tage Seite 1/16

Ceph. Distributed Storage Julian mino Klinck GPN

Visualisierung eines Step7-Programmes in WinCC

Informatik 11 Kapitel 2 - Rekursive Datenstrukturen

Adressen im Internet (Wdh.)

Der linke Teilbaum von v enthält nur Schlüssel < key(v) und der rechte Teilbaum enthält nur Schlüssel > key(v)

Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung. Maren Bennewitz

Es kann maximal ein Prozess die Umladestelle benutzen.

B1 Stapelspeicher (stack)

Besprechung des 3. Übungsblattes MIMA-Interpreter MIMA-Aufgabe: Primzahltest Weitere MIMA-Aufgaben online

Excel-Anwendung Wartungsplan

368 4 Algorithmen und Datenstrukturen

Bearbeitungszeit: 120 Minuten. Kommentare kosten Zeit; kommentieren Sie ihr Programm nur da, wo der Code alleine nicht verständlich wäre.

Excel-Anwendung Lagerverwaltung

Tafelübung zu BS 4. Interprozesskommunikation

Musterlösung zur Vorlesung Modellbasierte Softwareentwicklung Wintersemester 2014/2015 Übungsblatt 9

Einfache Arrays. Annabelle Klarl. Einführung in die Informatik Programmierung und Softwareentwicklung

Transkript:

Freispeicherverwaltung Allgemeine Techniken und Anwendung unter Linux Martin Wahl, 17.11.03 Freispeicherverwaltung 1

Überblick Allgemeines Suchstrategien Verwaltungsstrategien externer / interner Verschnitt Buddy System Algorithmus Slab Allocator Caches Slab Coloring Martin Wahl, 17.11.03 Freispeicherverwaltung 2

Unterteilung des Speichers virtueller Speicher: - nur beschränkt durch Anzahl der Bits der Adressen - virtuelle Adressen müssen auf physikalische Adressen abgebildet werden physikalischer Speicher: - Bereich für Kernel - Bereich für dynamischen Speicher Verwaltung des dynamischen Speichers entscheidet über die Geschwindigkeit des Gesamtsystems. Martin Wahl, 17.11.03 Freispeicherverwaltung 3

Suchstrategien für passenden Freibereich Mehrere Methoden: First-Fit: Suche nach ersten passenden Freibereich Best-Fit: Suche nach kleinsten passenden Freibereich Worst-Fit: Suche nach größten passenden Freibereich weitere Strategien Martin Wahl, 17.11.03 Freispeicherverwaltung 4

Suchstrategien für passenden Freibereich Beispiel: Martin Wahl, 17.11.03 Freispeicherverwaltung 5

Verschnitt Unterscheidung: externer Verschnitt Prozesse werden aufgeteilt und über den Speicher verteilt interner Verschnitt Speicher wird in Blöcke aufgeteilt, im Block bleibt meist Speicher ungenutzt Martin Wahl, 17.11.03 Freispeicherverwaltung 6

Verwaltungsstrategien Bit Maps: Seitenkacheln im Speicher werden durch Bits in einer Tabelle repräsentiert: Bit = 0: frei Bit = 1: belegt Vorteile: - einfache Handhabung - Bit Map-Größe statisch Nachteile: - Bit Map muss bei Freispeichersuche nach zusammenhängenden Nullen durchsucht werden - schlechtester Fall: komplette Bit Map muss durchlaufen werden => ineffizient Martin Wahl, 17.11.03 Freispeicherverwaltung 7

Bit Maps Beispiel: Martin Wahl, 17.11.03 Freispeicherverwaltung 8

Verwaltungsstrategien Linked Lists: - Verwaltung des Speichers in verketteten Listen - Jedes Segment ist entweder von einem Prozess belegt oder verweist auf freien Speicher - Sortierung meist nach Reihenfolge der Adressen - Integrierung neuer Prozesse durch First/Next/Best/Worst Fit - schnelle Zusammenfassung freien Speichers - häufige Verwendung von double linked lists => meist effizienter als Bit Maps Martin Wahl, 17.11.03 Freispeicherverwaltung 9

Linked Lists Beispiel: Martin Wahl, 17.11.03 Freispeicherverwaltung 10

Verwaltungsstrategien Buddy System Algorithmus: - Speicher wird in unterschiedlich große Bereiche aufgeteilt, Bereichsgröße entspricht Vielfachem von 2 - Bereiche werden in Listen verwaltet - jede Bereichsgröße in separater Liste - erste Liste enthält gesamten Speicherbereich - unterste Liste enthält meist 4 KByte Bereiche (theoretisch bis zu 1 Byte) - am Anfang alle Listen leer, bis auf erste Martin Wahl, 17.11.03 Freispeicherverwaltung 11

Buddy System Algorithmus Beispiel: Martin Wahl, 17.11.03 Freispeicherverwaltung 12

Buddy System Algorithmus Vorteil: schnelle Zusammenfassung von freien Speicherblöcken Nachteile: - ineffizient bei kleinen Datenmengen - interner Verschnitt => Weitere Techniken zur Effizienzsteigerung Martin Wahl, 17.11.03 Freispeicherverwaltung 13

Slab Allocator Speicher als Objekt mit Methoden und Funktionen Martin Wahl, 17.11.03 Freispeicherverwaltung 14

Slab Allocator speichert häufig benötigte Speicherkacheln, um Kernel zu entlasten unterscheidet nach Häufigkeit der Anfragen für eine bestimmte Speichergröße erzeugt schon Objekte einer Speichergröße, bevor sie angefordert werden, wenn die Erwartung der Anfrage hoch ist vermeidet dadurch Aufrufe des Buddy System Algorithmus Martin Wahl, 17.11.03 Freispeicherverwaltung 15

Caches Zwischenspeicherung von Prozessen => schnellerer Zugriff Unterscheidung: generelle Caches: vom Slab Allocator benutzt, erster Cache enthält Beschreibung der restlichen Caches spezifische Caches: vom Rest des Kernels benutzt Ein neu initialisierter Cache enthält noch keine Slabs / Objekte, sie werden erst erzeugt, wenn sie benötigt werden Martin Wahl, 17.11.03 Freispeicherverwaltung 16

Slab Coloring Cache-großer Bereich wird in den Cache geladen. Problem: Wenn Prozess verteilt im Speicher liegt und an gleicher Position innerhalb der Slabs, muss abwechselnd geladen werden. => ineffizient Martin Wahl, 17.11.03 Freispeicherverwaltung 17

Slab Coloring Lösung: Slab Coloring Verwendung von Farben, um Slabs zu kennzeichnen, dass schon beim Laden der Prozesse in den Speicher Prozesse zusammenhängend gespeichert werden. Einfärben durch unterscheidliche Verschiebung freien Speichers vom Ende zum Anfang des Slabs; nur bei genügend freiem Speicher innerhalb der Slabs möglich. Martin Wahl, 17.11.03 Freispeicherverwaltung 18