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

Ähnliche Dokumente
5.5.5 Der Speicherverwalter

Linux Paging, Caching und Swapping

Tutorium Rechnerorganisation

Fachbericht Thema: Virtuelle Speicherverwaltung

wichtigstes Betriebsmittel - neben dem Prozessor: Speicher

Paging. Einfaches Paging. Paging mit virtuellem Speicher

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

Technische Informatik II Wintersemester 2002/03 Sommersemester Heiko Holtkamp

3. Speicherverwaltung

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

Definitionen zum Verschnitt

Betriebssysteme 1. Thomas Kolarz. Folie 1

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

Bootvorgang des DSM-Systems Systems Plurix

Wie groß ist die Page Table?

Betriebssysteme 1. Thomas Kolarz. Folie 1

Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung

Virtueller Speicher. SS 2012 Grundlagen der Rechnerarchitektur Speicher 44

(Prof. Dr. J. Schlichter, WS 2011 / 2012) Übungsleitung: Dr. Wolfgang Wörndl (gbs-ws11@mailschlichter.informatik.tu-muenchen.de)

Lösungsvorschlag zur 6. Übung

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

Übung zu Grundlagen der Betriebssysteme. 13. Übung

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

Prozesse und Scheduling

Speicher Virtuelle Speicherverwaltung. Speicherverwaltung

Konzepte von Betriebssystemkomponenten (KVBK) Schwerpunkt Linux

8. Swapping und Virtueller Speicher

Kapitel 9 Hauptspeicherverwaltung

Technische Informatik 2 Speichersysteme, Teil 3

Technische Informatik 1

Übung 4 - Betriebssysteme I

Grundlagen der Rechnerarchitektur

Grundlagen der Informatik III Wintersemester 2010/2011

(Prüfungs-)Aufgaben zum Thema Speicherverwaltung

Realisierung eines Speichermanagements zur Zugriffsvirtualisierung von konkurrierenden Nutzerdesigns auf Rekonfigurierbarer Hardware

Grundlagen Rechnerarchitektur und Betriebssysteme

4. Übung - Betriebssysteme

Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung. Maren Bennewitz

Praktikum Informatik 2: Betriebssysteme und Rechnernetze

Lösungsskizzen zur Abschlussklausur Betriebssysteme

Betriebssysteme I WS 2013/2014. Betriebssysteme / verteilte Systeme rolanda.dwismuellera@duni-siegena.de Tel.: 0271/ , Büro: H-B 8404

Linker: Adreßräume verknüpfen. Informationen über einen Prozeß. Prozeß-Erzeugung: Verwandtschaft

6 Speicherverwaltung

Memory Management. Peter Puschner Institut für Technische Informatik

Speicherverwaltung. Strategien. Sommersemester Prof. Dr. Peter Mandl. Prof. Dr. Peter Mandl. Seite 1

5.Vorlesung Betriebssysteme Hochschule Mannheim

Speicher. Betriebssysteme (zu Teilen nach Tanenbaum) Hermann Härtig TU Dresden. Tanenbaum MOS

Einführung in die technische Informatik

Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung. Maren Bennewitz

4.3 Hintergrundspeicher

Übung zu Einführung in die Informatik # 10

Virtueller Speicher und Cache. VL5 GRT, SS 2004, Kneisel

Virtueller Speicher. Teil 2. Prof. Dr. Margarita Esponda-Argüero WS 2011/2012. M. Esponda-Argüero

1. Speicher. Typische Nutzung eines Adreßraums. Systemsoftware. Textbereich relativ klein. Sehr großer Abstand zwischen Heap und Stack

Rechnernutzung in der Physik. Betriebssysteme

Konzepte von Betriebssystemkomponenten Disk-Caches und Dateizugriff

Wenn alle Referenzbits gleich 1, wird nach FIFO entschieden

Verteilte Echtzeit-Systeme

Microkernel-Betriebssysteme Mach, L4, Hurd

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

5 Speicherverwaltung. bs-5.1 1

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

, SS2012 Übungsgruppen: Do., Mi.,

(a) Wie unterscheiden sich synchrone und asynchrone Unterbrechungen? (b) In welchen drei Schritten wird auf Unterbrechungen reagiert?

Vorlesung "Verteilte Systeme" Sommersemester Verteilte Systeme. Adreßraum. Rechner. Verteilte Systeme, Sommersemester 1999 Folie 19.

Betriebssysteme (BS)

5. Vorlesung Betriebssysteme

Systemprogramme bezeichnen alle Programme, die bestimmte Aufgaben unterstützen, die unabhängig von einer konkreten Anwendung sind

Virtuelle Speicherverwaltung

6 Speicherorganisation

9 Speicherorganisation

Systeme 1. Kapitel 3 Dateisysteme WS 2009/10 1

Grundlagen von Caching-Mechanismen beim Zusammenspiel von Mikroprozessor und Betriebssystem. Klaus Kusche Dezember 2015

Systeme I: Betriebssysteme Kapitel 4 Prozesse. Maren Bennewitz

, WS2012 Übungsgruppen: Mo., Do.,

Jeder Datenträger besitzt einen I-Node-Array. Jede Datei auf dem Datenträger hat einen I-Node-Eintrag.

Technische Informatik 2 Speichersysteme, Teil 2

1. Von-Neumann-Architektur (7/66 Punkte)

Speicherverwaltung (Swapping und Paging)

6.6 Persistenter virtueller Speicher

Echtzeit-Multitasking

Computer-Systeme Teil 15: Virtueller Speicher

I.1 Ansätze. Choices. OO als Basis für neue Betriebssystemarchitekturen. OO zur Strukturierung traditioneller Betriebssystemarchitekturen

Grundlagen der Betriebssysteme

Kapitel VI. Speicherverwaltung. Speicherverwaltung

Die L4-Mikrokern. Mikrokern-Familie. Hauptseminar Ansätze für Betriebssysteme der Zukunft. Michael Steil. Michael Steil

Proseminar Konzepte von Betriebssystem-Komponenten Disk-Caches & Dateizugriff von Athanasia Kaisa

Medienpraktikum Medienpsychologie. Seminar für Pädagogik, Universität Ulm Sommersemester Anne Wilzek Doreen Eichler

Betriebssysteme Übung 2. Tutorium System Calls & Multiprogramming

5.6 Segmentierter virtueller Speicher

13. Übung mit Musterlösung

Betriebssysteme. 4y Springer. Eine kompakte Einführung mit Linux. Albrecht Achilles. Mit 31 Abbildungen

Überlegungen beim Entwurf eines Betriebssystems

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

A Kompilieren des Kernels B Lineare Listen in Linux C Glossar Interessante WWW-Adressen Literaturverzeichnis...

Test (Lösungen) Betriebssysteme, Rechnernetze und verteilte Systeme

Betriebssystem? Übersicht. Ziele. Grundlagen. Das ist nur die Oberfläche... Wissen, was man unter einem Betriebssystem versteht

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

Persona-SVS e-sync GUI/Client Installation

Die Linux Kernel Virtual Machine - Wo steht der Linux Hypervisor? 2. März 2008

Transkript:

Speicher- und Cacheverwaltung unter Linux Ralf Petring & Guido Schaumann

Übersicht Virtueller Adressraum Virtuelle Speicheraufteilung Reale Speicheraufteilung Speicherverwaltung Speicherzugriff Auslagerungsstrategien Speicher- und Cachverwaltung Guido Schaumann & Ralf Petring Folie Nr. 2

Virtueller Adressraum 4 Gigabyte gesamt bei 32 Bit Rechnern 16 Exabyte bei 64 Bit Rechnern ( 17.179.869.184 GB ) 1 GB für Kern Nur im Kernmodus zugreifbar Für Seitentabellen und andere Informationen des Kerns 3 GB Benutzer Aufgeteilt in zusammenhängende Bereiche Vielfaches der Seitengröße 4 KB beim Pentium (32 Bit) 8 KB beim Alpha (64 Bit) mit gleichen Schutzrechten, Auslagerungseigenschaften. Programmcode, eingeblendete Dateien Entstehung von Löchern zwischen den Bereichen Fatale Seitenfehler Speicher- und Cachverwaltung Guido Schaumann & Ralf Petring Folie Nr. 3

Virtuelle Speicheraufteilung (1) Aufteilung des Virtuellen (Benutzer)Adressraumes in 3 Teile Text ( Programmcode ) Daten Statische Daten Dynamische Daten (BSS : block started by symbol, IBM Assembleroperator) Keller Gemeinsamer Speicher für Text bei gleichem Code Problem bei selbstmodifizierenden Programmen Seit 1950 aus der Mode, weil zu komplex für ( teilweise ) gemeinsam genutzte Dateien Problem bei Schreibzugriffen Problemlösung : copy on write Speicher- und Cachverwaltung Guido Schaumann & Ralf Petring Folie Nr. 4

Virtuelle Speicheraufteilung (2) Prozess A Keller Physischer Speicher Prozess B Keller Eingeblendete Datei Eingeblendete Datei BSS Daten Text Kernel ( festverdrahtet ) BSS Daten Text Speicher- und Cachverwaltung Guido Schaumann & Ralf Petring Folie Nr. 5

Reale Speicheraufteilung 3 Speicherzonen Zone_DMA Gerätetreiber, etc. 0 16 MB Zone_Normal Möglichst alle Benutzerprozesse über 16 MB Zone_Highmem Spezialfall bei x86 Prozessoren über 896 MB Benutzung nur wenn nötig Speicher- und Cachverwaltung Guido Schaumann & Ralf Petring Folie Nr. 6

Buddyverfahren Speicherverwaltung Verwaltung in Listen pro Buddygröße eine Liste Listenköpfe in einer sortierten Liste zusammengefasst Nachteil : Großer Verschnitt zweite Speicherverwaltung Blöcke werden in Scheiben geschnitten Scheiben werden separat verwaltet dritte Speicherverwaltung Für Speicherbereiche die nicht zusammenhängen müssen Speicher- und Cachverwaltung Guido Schaumann & Ralf Petring Folie Nr. 7

Speicherzugriff 3 - stufiges Pagingverfahren (x86 2 stufig simuliert) Globales Verzeichniss Mittleres Seitenverzeichniss Seitentabelle Seite Verzeichniss Mitte Seite Offset Speicher- und Cachverwaltung Guido Schaumann & Ralf Petring Folie Nr. 8

Page Fault Algorithmus Page Fault Adresse im Benutzerraum? Nein Ja Zugriff erlaubt? Benutzermodus? Ja Nein Ja Nein allozieren SIGSEV Crash Speicher- und Cachverwaltung Guido Schaumann & Ralf Petring Folie Nr. 9

Auslagerung Kern wird niemals verdrängt Textsegmente und eingeblendete Dateien werden auf die entsprechende Datei ausgelagert Auslagerung in Swapdateien oder Swappartitionen Max 8 Swapdateien Dynamisches hinzufügen und entfernen Verwaltung in Prioritätsliste Partition hat höchste Priorität Partitionen sind schneller Benutzung von demand paging Prozesse werden Seitenweise ausgelagert Früher nur komplette Prozesse Speicher- und Cachverwaltung Guido Schaumann & Ralf Petring Folie Nr. 10

Auslagerungsstrategie (1) bdflush periodisch zu viele der Seiten modifiziert zurückschreiben kswapd periodisch alle 1 sec oder bei Bedarf versucht eine Anzahl Seiten freizuhalten Speicher- und Cachverwaltung Guido Schaumann & Ralf Petring Folie Nr. 11

Auslagerungsstrategie (2) kswapd Algorithmus lange nicht benötigte Seiten eines Prozesses freigeben möglichst Prozesse die schon lange im Speicher sind mod. Clock Algorithmus in Reihenfolge der virtuellen Adresse selten benötigte gemeinsame Dateien freigeben Freigabe von anderen Seiten minimale Verweilzeit im Speicher (Vermeidung von Trashing) sauber sofort freigeben dirty mit Hintergrundspeicher zurückschreiben und freigeben dirty ohne Hintergrundspeicher Speicher allozieren 2. Chance Speicher- und Cachverwaltung Guido Schaumann & Ralf Petring Folie Nr. 12

Quellen Tanenbaum, A.: Moderne Betriebssysteme, 2002 Das Internet verschiedene Diplomarbeiten und Referate Silberschatz, A.: Operating System Concepts, 2002 Speicher- und Cachverwaltung Guido Schaumann & Ralf Petring Folie Nr. 13