7. Speicherverwaltung

Größe: px
Ab Seite anzeigen:

Download "7. Speicherverwaltung"

Transkript

1 7. Speicherverwaltung Ziele Zuteilung des Arbeitsspeicher Abbildung der symbolischen Adresse auf die physikalische Adresse Adress-Transformation Symbolische Adresse verschiebbare Adresse physikalische Adresse Adress-Bindung Compilationszeit Bindezeit Ladezeit Ausführungszeit Betriebse Harald Kosch Seite

2 Monoprogrammierung Das Betriebs belegt feste Speicherbereiche. Der freie Speicher wird einem Benutzerprogramm zur Verfügung gestellt. Das Benutzerprogramm organisiert seinen Speicherbedarf selber, z.b. Statische (global), dynamische (heap) und halbdynamische (stack) Daten Overlay von Programmen (Programm wird in mehreren Phasen geladen) XFFF Betriebssytem im ROM Gerätetreiber im ROM Benutzerprogramm Benutzerprogramm Benutzerprogramm Betriebssytem im RAM (a) (b) Betriebssytem im RAM (c) Figure : Drei Arten der Speicherorganisation mit dem Betriebs und einem Benutzerprozeß Betriebse Harald Kosch Seite

3 Multiprogrammierung CPU-Ausnützung = - p n wobei p die Wahrscheinlichkeit ist, daß ein Prozeß untätig (wartend) ist, und n die Anzahl der Prozesse ist. 8 6 CPU-Ausnutzung (in Prozent) % E/A-Wartezeit 5% E/A-Wartezeit 8% E/A-Wartezeit Multiprogrammierungsgrad Figure : CPU-Ausnutzung als eine Funktion von der Anzahl der im Speicher gehaltenen Prozesse Betriebse Harald Kosch Seite 5

4 benötigte Ankunfts- CPU- Auftrag zeit Minuten : : :5 : (a) # Prozesse CPU untätig CPU beschäftigt CPU/Prozeß (b) Auftrag Auftrag beginnt Auftrag terminiert Zeit relativ zum Ankommen des Auftrags (c) Figure : (a) Ankunft und benötigte Arbeit der vier Aufträge. (b) CPU- Ausnutzung der Aufträge bis mit 8%-iger E/A-Wartezeit. (c) Folge der Ereignisse, wie die Aufträge ankommen und enden Betriebse Harald Kosch Seite 6

5 Feste Partitionierung Eine oder mehrere Warteschlangen. Anwendungen in die am besten passende Partition. Viel zu große Anwendungen sind ausgeschlossen. Viel zu kleine Anwendungen verschwenden Speicher (interne Fragmentierung). IBM OS/MFT. Mehrere Eingabeschlangen Partition 7 K Partition Partition Eine Eingabeschlange Partition K Partition Partition Betriebs (a) K K Partition Partition Betriebs (b) Figure 5: (a) Feste Speicherpartitionierung mit getrennten Eingabeschlangen für jede Partition (b) Feste Speicherpartitionierung mit einer einzigen Eingabeschlange Partitionierung mit variablen Größen Löst die Probleme von MFT, muß aber das Problem der externen Fragmentierung lösen. IBM OS/MVT Betriebse Harald Kosch Seite 7

6 Fragmentierung des Speichers K K K K K P P P P terminates allocate P5 P5 K K K K K P P" terminates allocate P P P P 7 K 7 K 7 K K K K K K P P P P P K K K K K 56 K 56 K 56 K 56 K 56 K Figure 6: Speicherverwaltung und long-term Scheduling Externe Fragmentierung bei variablen Blockgrößen Die zusammenhängenden Bereiche (Partitionen) werden immer kleiner Interne Fragmentierung bei festen Blockgrößen Innerhalb der Partitionen bleiben unausgenützte Bereiche Betriebse Harald Kosch Seite 8

7 Speicherverdichtung K K P5 P5 K 9 K P P (a) 7 K 6 K P K 9 K P K 56 K 56 K K 5 K 6 K P P K K 5 K 6 K 8 K P P P K 5 K 6 K P P P K 5 K 6 K P P K K P K P K K P 9 K (b) K 5 K 5 K P 9 K 9 K P 9 K K K original allocation K moved 6 K K moved K 9 K P K moved K Figure 7: (a) Verdichtung (b) Vergleich einiger Verdichtungsmöglichkeiten Dynamische Verschiebung von Partitionen Zeitaufwendig: Optimierung notwendig Benutzung von ausgeklügelten Allozierungsstrategien Betriebse Harald Kosch Seite 9

8 Allozierungsstrategien Blöcke fester Länge (Bitmap oder Liste) Bitmap ist einfach, aber langsam, rigide und fehleranfällig A (b) B C 8 6 (a) P 5 H 5 P 8 6 P H 8 P 6 P 6 H 9 X D E Loch Länge Start bei 8 (c) Prozeß Figure 8: Ein Teil des Speichers mit fünf Prozessen und drei Löchern. Die schattierten Bereiche ( in der Bitmap) sind frei. (b) Die korrespondierende Bitmap. (c) Dieselbe Information als verknüpfte Liste. Blöcke variabler Länge (Listen der freien und der allozierten Blöcke) first fit (nehme den ersten passenden Block) next fit (first fit ab letzter Stelle) best fit (langsam) worst fit (Löcher bleiben größer, ist aber langsam) quick fit (getrennte Liste für häufige Fälle) Deallozierung langsam: Nachbarn sollten zusammengeschmolzen werden. Betriebse Harald Kosch Seite

9 Allozierung mit dem Buddy-System (D.E Knuth) Memory 8 K 56 K 8 K 5 K 6 K 768 K 896K M Holes Start Request for 7 Request for 5 Request for 8 Return of A Request for 6 Return of B Return of D Return of C A A B A B B B D D C C C C C 8 5 Figure 9: Das Buddy-System. Die horizontalen Achsen repräsentieren die Speicheradressen. Die Nummern sind die Größe der nichtallozierten Speicherblöcke in K. Die Buchstaben stellen allozierte Speicherblöcke dar. Die Blockgröße sind Zweierpotenzen Jede Größe ist auf einer eigenen Liste Blöcke werden so lange halbiert, bis ein geeigneter Block entsteht Schnell beim Allozieren und Deallozieren (kurze Liste) Große interne Fragmentierung Wird in Linux als Basisalgorithmus verwendet (zusätzlich zu demand paging) Betriebse Harald Kosch Seite

10 Allozierungsstrategie: Paging logical address physical address CPU p d f d Memory p{ f page table Figure : Paging Hardware Der Hauptspeicher wird in Seiten fester Größe aufgeteilt Abbildung: logische Adresse physikalische Adresse Unterstützung der Hardware Memory Management Unit (MMU) Physikalisch verteilte Speicher werden logisch zusammenhängend gemacht (Verdichtung nicht mehr nötig!) Betriebse Harald Kosch Seite

11 frame number page page page page logical memory 7 page table 5 6 page page page 7 page physical memory Figure : Paging Modell mit logischem und physikalischem Speicher Page (Seite) Frame (Kachel) Page Größen: 56, 5, Bytes p = U DIV P d = U MOD P P: Page size, U: logische Adresse p: Page Nummer, d: Offset in der Page Wenn P eine Zweierpotenz ist, dann: p d Betriebse Harald Kosch Seite

12 a b c d e f g h i j k l m n o p logical memory 5 6 page table i j k l 8 m n o p 6 8 a b c d e f g h physical memory Figure : Paging-Beispiel mit -Byte Pages P =, Speichergröße = 8 Pages ( = Bytes) Der logische Adreßraum des Beispielprozesses beträgt Pages = 6 Bytes Paging ist eine Art dynamische Reallokation. Alle logischen Adressen werden auf physikalische Adressen abgebildet. Virtueller Speicher: Anzahl logischer Adressen physikalische Adressen. Betriebse Harald Kosch Seite

13 Reentranter Code Ed Ed Ed Data job Ed Ed Ed Data job 6 page table for job 6 page table for job Ed Ed 6 Ed 7 page table Data for job job Data Data Ed Ed Ed Data Figure : Codesharing mit Pages Betriebse Harald Kosch Seite 5

14 Implementierung von Page Tabellen Second level page tables Top level page table... Page table for the top M of memory Bits PT PT Offset (a)... (b)... To pages Figure : (a) Eine -bit Adresse mit zwei Pagetable-Feldern. Page-Tabellen (b) Zweistufige Kleine Page-Tabelle Spezialregister (bis 56) Große Page-Tabelle Tabelle im Speicher eventuell Cache (TLB - Translation Lookaside Buffer) Einschränkung der Größe: mehrschichtige Tabellen Betriebse Harald Kosch Seite 6

15 Zuteilung an Jobs (a) New Job page page page page Free Frame List Free Frame List 5 page page New Job page page page page page (b) New Job Page Table 8 9 page Keine externe Fragmentierung Interne Fragmentierung P/ in der letzten Seite eines zusammenhängendes Bereiches Betriebse Harald Kosch Seite 7

16 Invertierte Page-Tabelle Konventionelle Seitentabelle für einen Prozeß Systemweite invertierte Seitentabelle Flag Bit Seitenrahmen Pid Flag Bit Seitenrahmen virtuelle Seite K virtuelle Seite virtuelle Seite virtuelle Seite.... Seitenrahmen Seitenrahmen Seitenrahmen.... Eintrag der ausgewählten virtuellen Seite K Eintrag der ausgewählten virtuellen Seite K (a) (b) Figure 5: (a) Eine konventionelle Seitentabelle (b) Eine invertierte Seitentabelle Wird bei Rechnern mit viel Adressbits (6 bit) aktuell Die Page-Tabellen würden unrealistisch groß werden Die Tabelle wird nach den physikalischen Seite geordnet Fehlt eine Seite, so muß die Tabelle nach der logischen Adresse durchsucht werden Hashing kann (muß) das Verfahren beschleunigen Betriebse Harald Kosch Seite 8

17 Segmentierung subroutine stack s{ segment table limit base sqrt symbol table CPU (s, d) main program < no yes trap; addressing error physical memory logical address space (a) (b) Figure 6: (a) Benutzersicht eines Programms (b) Segmentation Hardware Speicher besteht aus Blöcken variabler Länge (Segmente) näher der Benutzersicht Interne Fragmentierung fällt weg Externe Fragmentierung bleibt Problem Verdichtung relativ einfach alles ist verschiebbar Betriebse Harald Kosch Seite 9

18 subroutine Segment sqrt stack Segment symbol table Segment Segment Table limit base 6 7 Segment Segment Segment main program Segment Segment 7 Segment 57 logical address space (a) 6 Segment 67 physical memory Figure 7: Beispiel zu Segmentierung Segment Table Implementierung: Register (PDP /5) s d 5 8 p 8 kb Memory Segment Table Base Register (STBR) Segment Table Length Register (STLR) Cache Betriebse Harald Kosch Seite

19 Segmentierung und Paging kombiniert z.b. die Lösung ab Intel 886 (der 86er kennt nur Segmentierung) Programmsicht: Segmentierung. Die Segmente können aus Speicherzellen oder Seiten bestehen. Selektor: wählt ein Segment aus. Bits Index = GDT/ = LDT Privilege level (-) Figure 8: Selector des Intel Pentium Deskriptor: Beschreibt ein Segment : 6-Bit segment : -Bit segment : Li is in bytes : Li is in pages : Segment is absent from memory : Segment is present in memory Privilege level ( - ) : System : Application Segment type and protection Base - G D Limit 6-9 P DPL S Type Base 6 - Base - 5 Limit - 5 Bits Relative address Figure 9: Ein Pentium Code Segment Descriptor Seite: kb Betriebse Harald Kosch Seite

20 Lineare Adresse -bit virtuelle Adresse Selector Offset Descriptor Base address Limit Other fields -Bit linear address Figure : Umwandlung eines (Selektor, Offset) Paares in eine lineare Adresse Page-Directory Jedem Prozeß gehört ein zweischichtiges Directory. Eine Pagetabelle kann KB = MB behandeln. Unnötige Tabellen werden nicht erzeugt (für Speicher < MB genügt z.b. nur eine) Linear address Bits Dir Page Offset Page directory Page table Word selected Page frame Entries Dir Page Offset Directory entry points to page table Page table entry points to word Figure : Mapping einer linearen Adresse auf eine physikalische Adresse Betriebse Harald Kosch Seite

Zwei Möglichkeiten die TLB zu aktualisieren

Zwei Möglichkeiten die TLB zu aktualisieren Zwei Möglichkeiten die TLB zu aktualisieren Die MMU kümmert sich um alles (Hardware-Lösung) sucht die p-entry wenn diese nicht da ist, behandelt direkt das TLB-miss zum Schluss wird die neue p-entry (virt

Mehr

Hauptspeicherverwaltung - Memory Management

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 -

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

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

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

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

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

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

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

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

Speicherverwaltung. Design Digitaler Systeme. Prof. Dr.-Ing. Rainer Bermbach

Speicherverwaltung. Design Digitaler Systeme. Prof. Dr.-Ing. Rainer Bermbach Speicherverwaltung Design Digitaler Systeme Prof. Dr.-Ing. Rainer Bermbach Übersicht Speicherverwaltung Virtueller Speicher Memory Management Unit Segmentierung Paging Kombination Segmentierung/ Paging

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

(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

Vorlesung: Rechnerstrukturen, Teil 2 (Modul IP7)

Vorlesung: Rechnerstrukturen, Teil 2 (Modul IP7) Vorlesung: Rechnerstrukturen, Teil 2 (Modul IP7) Vorlesung: Rechnerstrukturen, Teil 2 (Modul IP7) J. Zhang [email protected] Universität Hamburg AB Technische Aspekte Multimodaler Systeme

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

Übung Praktische Informatik II

Übung Praktische Informatik II Übung Praktische Informatik II FSS 2009 Benjamin Guthier Lehrstuhl für Praktische Informatik IV Universität Mannheim [email protected] 22.05.09 11-1 Heutige große Übung Ankündigung

Mehr

Betriebssysteme. Speicherverwaltung - Grundlegende Konzepte. Sommersemester 2014 Prof. Dr. Peter Mandl. Prof. Dr. Peter Mandl Seite 1.

Betriebssysteme. Speicherverwaltung - Grundlegende Konzepte. Sommersemester 2014 Prof. Dr. Peter Mandl. Prof. Dr. Peter Mandl Seite 1. Speicherverwaltung - Grundlegende Konzepte Sommersemester 2014 Prof. Dr. Peter Mandl Prof. Dr. Peter Mandl Seite 1 Gesamtüberblick 1. Einführung in 2. Betriebssystemarchitekturen und Betriebsarten 3. Interruptverarbeitung

Mehr

Freispeicherverwaltung

Freispeicherverwaltung Freispeicherverwaltung Allgemeine Techniken und Anwendung unter Linux Martin Wahl, 17.11.03 Freispeicherverwaltung 1 Überblick Allgemeines Suchstrategien Verwaltungsstrategien externer / interner Verschnitt

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

Betriebssysteme Sommersemester Betriebssysteme. 5. Kapitel. Adressumsetzung. Dr. Peter Tröger / Prof. M. Werner. Professur Betriebssysteme

Betriebssysteme Sommersemester Betriebssysteme. 5. Kapitel. Adressumsetzung. Dr. Peter Tröger / Prof. M. Werner. Professur Betriebssysteme Betriebssysteme Sommersemester 2017 Betriebssysteme 5. Kapitel Adressumsetzung Dr. Peter Tröger / Prof. M. Werner Professur Betriebssysteme 5.1 Speicher schneller, teurer, kleiner Betriebssysteme Adressumsetzung

Mehr

Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung. Maren Bennewitz

Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung. Maren Bennewitz Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung Maren Bennewitz Version 29.1.214 1 Inhalt Vorlesung Aufbau einfacher Rechner Überblick: Aufgabe, Historische Entwicklung, unterschiedliche Arten

Mehr

Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung

Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung Version 11.01.2017 1 Inhalt Vorlesung Aufbau einfacher Rechner Überblick: Aufgabe, historische Entwicklung, unterschiedliche Arten von Betriebssystemen

Mehr

Abbilden von virtuellen auf physikalische Adressen

Abbilden von virtuellen auf physikalische Adressen Abbilden von virtuellen auf physikalische Adressen Virtuelle Adresse 31 30 29 28 27... 15 14 13 12 11 10 9 8... 3 2 1 0 Virtuelle Seitennummer Seiten Offset Translation Physikalische Adresse 29 28 27...

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

3 Schnittstelle zum Betriebssystem 3.1 Einleitung

3 Schnittstelle zum Betriebssystem 3.1 Einleitung 3.1 Einleitung 1 Anbindung zum Betriebssystem (BS) Aufgaben BS Schnittstelle zur Hardware Sicherstellung des Betriebs mit Peripherie Dienste erfüllen für Benutzung Rechner Dateiverwaltung (Kopieren, Verwalten,.)

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

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

Überschrift. Speicherverwaltung. Prof. Dr. Margarita Esponda Freie Universität Berlin 2011/2012

Überschrift. Speicherverwaltung. Prof. Dr. Margarita Esponda Freie Universität Berlin 2011/2012 Überschrift Speicherverwaltung Prof. Dr. Margarita Esponda Freie Universität Berlin 2011/2012 1 Hauptziele: Speicherverwaltung Speicher ist die zweite wichtigste Ressource, die das Betriebssystem verwalten

Mehr

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

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

Mehr

Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung

Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung Version 13.01.2015 1 Klausur Termin: 10. März 2016, 13:00 Uhr Raum: Audimax, KG 2 4 ECTS Punkte 3 Klausuranmeldung Anmeldefrist: 31.01.2016 (Ausnahme:

Mehr

Technische Informatik II (TI II) (8) Speicherverwaltung. Sebastian Zug Arbeitsgruppe: Embedded Smart Systems

Technische Informatik II (TI II) (8) Speicherverwaltung. Sebastian Zug Arbeitsgruppe: Embedded Smart Systems 1 Technische Informatik II (TI II) (8) Speicherverwaltung Sebastian Zug Arbeitsgruppe: Embedded Smart Systems 2 Fragen an die Veranstaltung Nach welchen Merkmalen lässt sich der Speicher in einem Rechner

Mehr

Inhaltsübersicht. Speicherverwaltung Teil I. Motivation. Prinzipielle Arten der Speicherverwaltung

Inhaltsübersicht. Speicherverwaltung Teil I. Motivation. Prinzipielle Arten der Speicherverwaltung Speicherverwaltung Teil I Hard- und Software-Komponenten zur Speicherverwaltung Inhaltsübersicht Zusammenhängende Speicherzuteilung Partitionen fester Größe Partitionen variabler Größe Methoden zur Verwaltung

Mehr

Linux Paging, Caching und Swapping

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

Mehr

Prof. Dr. Sharam Gharaei. Inhaltsverzeichnis. 1 Einleitung 1. 2 Grundlage der Realisierung 2. 3 Die Realisierung 3. Literaturverzeichnis 7

Prof. Dr. Sharam Gharaei. Inhaltsverzeichnis. 1 Einleitung 1. 2 Grundlage der Realisierung 2. 3 Die Realisierung 3. Literaturverzeichnis 7 Prof. Dr. Sharam Gharaei Version 1.2.0, 07.04.2017 Inhaltsverzeichnis 1 Einleitung 1 1.1 Code-bezogene Aspekte 2 1.2 Speicherungsbezogene Aspekte 2 2 Grundlage der Realisierung 2 3 Die Realisierung 3 3.1

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

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

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

Lösungsvorschlag für Übung September 2009

Lösungsvorschlag für Übung September 2009 Universität Mannheim Vorlesung Betriebssysteme Lehrstuhl für Praktische Informatik 1 Herbstsemester 2009 Prof. Dr. Felix Freiling Dipl.-Inform. Jan Göbel Lösungsvorschlag für Übung 2 25. September 2009

Mehr

5.6 Segmentierter virtueller Speicher

5.6 Segmentierter virtueller Speicher 5.6 Segmentierter virtueller Speicher Zur Erinnerung: Virtueller Speicher ermöglicht effiziente und komfortable Nutzung des realen Speichers; Sharing ist problematisch. Segmentierung erleichtert Sharing,

Mehr

Memory Management. Peter Puschner Institut für Technische Informatik [email protected]

Memory Management. Peter Puschner Institut für Technische Informatik peter@vmars.tuwien.ac.at Memory Management Peter Puschner Institut für Technische Informatik [email protected] 1 Speicherverwaltung Effektive Aufteilung und Verwaltung des Arbeitsspeichers für BS und Programme Anforderungen

Mehr

Pru fungsprotokoll. Prüfer: Dr. Lenhardt Beisitzer:? Datum der Prüfung: Dauer: 25 Minuten

Pru fungsprotokoll. Prüfer: Dr. Lenhardt Beisitzer:? Datum der Prüfung: Dauer: 25 Minuten Pru fungsprotokoll Prüfer: Dr. Lenhardt Beisitzer:? Datum der Prüfung: 09.12.2016 Dauer: 25 Minuten Das folgende Protokoll habe ich nach bestem Wissen und Gewissen erstellt. Es besteht kein Anspruch auf

Mehr

Speicherverwaltung III

Speicherverwaltung III Speicherverwaltung III Andreas Görzen Marius Schultchen Benjamin Kotke Sascha Sternheim 26. Februar 2013 Inhaltsverzeichnis 1 Datenstruktur zur physikalischen Speicherverwaltung 2 1.1 Übersicht möglicher

Mehr

Echtzeitbetriebssysteme

Echtzeitbetriebssysteme Speicherverwaltung (Memory Management) Aufgaben der Memory-Management-Unit ist l der Speicherschutz und l die Adressumsetzung Wird durch Hardware unterstützt l Memory Management Unit (MMU) l MMU wird vom

Mehr

Dynamisches Speichermanagement

Dynamisches Speichermanagement Dynamisches Speichermanagement Proseminar C-Programmierung - Grundlagen und Konzepte Timo Minartz [email protected] Wissenschaftliches Rechnen Fachbereich Informatik Universität Hamburg

Mehr

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

Kapitel 6 Speicherverwaltung Seite 1 zum Teil nach: Silberschatz&Galbin, Operating System Concepts, Addison-Wesley) Kapitel 6 Speicherverwaltung Seite 1 6 Speicherverwaltung 6.1 Hintergrund Ein Programm muß zur Ausführung in den Hauptspeicher gebracht werden und in die Prozeßstruktur eingefügt werden. Dabei ist es in

Mehr

Betriebssysteme Teil 10 B: Fragen rund um Seitenfehler

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

Mehr

Cache Blöcke und Offsets

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

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

Aufgabe 4 : Virtueller Speicher

Aufgabe 4 : Virtueller Speicher Sommer 216 Technische Informatik I Lösungsvorschlag Seite 16 Aufgabe 4 : Virtueller Speicher (maximal 27 Punkte) 4.1: Generelle Funktionsweise (maximal 5 Punkte) (a) (1 Punkt) Nennen Sie zwei Gründe, weshalb

Mehr

Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung

Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung Version 27.1.216 1 Klausur Termin: 1. März 216, 13: Uhr Raum: Audimax, KG 2 4 ECTS Punkte 2 Klausuranmeldung Anmeldefrist: 31.1.216 (Ausnahme: Biologie-Module)

Mehr

Kapitel VI. Speicherverwaltung. Speicherverwaltung

Kapitel VI. Speicherverwaltung. Speicherverwaltung Kapitel VI Speicherverwaltung 1 Speicherverwaltung Computer exekutiert Programme (mit Daten) im Hauptspeicher. Hauptspeicher: Großes Array von Wörtern (1 oder mehrere Bytes) Jedes Wort hat eine eigene

Mehr

Fachbericht Thema: Virtuelle Speicherverwaltung

Fachbericht Thema: Virtuelle Speicherverwaltung Fachbericht 15.10.99 1 HINTERGRÜNDE/ MOTIVATION 2 2 FUNKTIONEN DER SPEICHERVERWALTUNG 2 3 ARTEN DER SPEICHERVERWALTUNG 2 3.1 STATISCHE SPEICHERVERWALTUNG 2 3.2 DYNAMISCHE SPEICHERVERWALTUNG 3 3.2.1 REALER

Mehr

Rechnergrundlagen SS Vorlesung

Rechnergrundlagen SS Vorlesung Rechnergrundlagen SS 2007 13. Vorlesung Inhalt Cache Lesen Schreiben Überschreiben Memory Management Unit (MMU) Translation Lookaside Buffer (TLB) Klausurvorbereitung Inhalte der Klausur Rechnergrundlagen

Mehr

Bsys2 Zusammenfassung. Definition Die CPU ist das Gehirn des Computers. Sie holt Befehle aus dem Speicher und führt sie aus.

Bsys2 Zusammenfassung. Definition Die CPU ist das Gehirn des Computers. Sie holt Befehle aus dem Speicher und führt sie aus. Prozessoren Definition Die CPU ist das Gehirn des Computers. Sie holt Befehle aus dem Speicher und führt sie aus. Register Alle Prozessoren besitzen interne Register, um den Zugriff auf Daten zu beschleunigen.

Mehr

Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung

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

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

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

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). 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

Mehr

Übungen zu Grundlagen der Rechnerarchitektur und -organisation: Bonusaufgaben Übung 9 und Präsenzaufgaben Übung 10

Übungen zu Grundlagen der Rechnerarchitektur und -organisation: Bonusaufgaben Übung 9 und Präsenzaufgaben Übung 10 Übungen zu Grundlagen der Rechnerarchitektur und -organisation: Bonusaufgaben Übung 9 und Präsenzaufgaben Übung 10 Dominik Schoenwetter Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität

Mehr

Anbindung zum Betriebssystem (BS)

Anbindung zum Betriebssystem (BS) 5.1 Einleitung Anbindung zum Betriebssystem (BS) Aufgaben BS Schnittstelle zur Hardware Sicherstellung des Betriebs mit Peripherie Dienste erfüllen für Benutzung des Rechners durch Verwaltung der Ressourcen

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

Linux Memory Management für MySQL

Linux Memory Management für MySQL Linux Memory Management für MySQL SIG MySQL - Performance 13.03.2012 Marius Dorlöchter [email protected] www.ordix.de Vorstellung Marius Dorlöchter Consultant bei ORDIX seit 2006 Gruppe Systemintegration Betriebssysteme:

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

Intel x86 Bootstrapping

Intel x86 Bootstrapping Intel x86 Bootstrapping Meine CPU, mein Code! Andreas Galauner SigInt 2010 Democode Es gibt Democode: http://github.com/g33katwork/ SigInt10OSWorkshop git clone git://github.com/g33katwork/ SigInt10OSWorkshop.git

Mehr

Übung 4 - Betriebssysteme I

Übung 4 - Betriebssysteme I Prof. Dr. Th. Letschert FB MNI 9. Juni 2002 Übung 4 - Betriebssysteme I Aufgabe 1 1. Erläutern Sie die Begriffe der transparent und der virtuell mit ihrer in der Informatik üblichen Bedeutung. 2. Wie werden

Mehr

Technische Informatik 1 - HS 2017

Technische Informatik 1 - HS 2017 Institut für Technische Informatik und Kommunikationsnetze Prof. L. Thiele Technische Informatik 1 - HS 2017 Übung 11 Datum: 21. 22. 12. 2017 Virtueller Speicher 1 Performanz Gehen Sie von einem virtuellen

Mehr

Memory Management Units in High-Performance Processors

Memory Management Units in High-Performance Processors Memory Management Units in High-Performance Processors Ausgewählte Themen in Hardwareentwurf und Optik Seminar Universität Mannheim LS Rechnerarchitektur - Prof. Dr. U. Brüning WS 2003/2004 Frank Lemke

Mehr

Einführung Leistungsmerkmale Aufbau am Beispiel FAT16. Das Filesystem FAT. Peter Schmid. Hochschule für Technik Zürich Studiengang Informatik

Einführung Leistungsmerkmale Aufbau am Beispiel FAT16. Das Filesystem FAT. Peter Schmid. Hochschule für Technik Zürich Studiengang Informatik Hochschule für Technik Zürich Studiengang Informatik 17.4.2009 Outline 1 Wieso FAT? Geschichtlicher Rückblick 2 FAT12 FAT16 FAT32 3 Partitionen Bereiche Wieso FAT? Wieso FAT? Geschichtlicher Rückblick

Mehr

Speicherverwaltung. Kapitel VI. Adressbindung (2) Adressbindung (1) Speicherverwaltung

Speicherverwaltung. Kapitel VI. Adressbindung (2) Adressbindung (1) Speicherverwaltung Speicherverwaltung Kapitel VI Speicherverwaltung Computer exekutiert Programme (mit Daten) im Hauptspeicher. Hauptspeicher: Großes Array von Wörtern ( oder mehrere Bytes) Jedes Wort hat eine eigene Adresse.

Mehr

5.4 Segmentierung. Einfachstes Beispiel: 1 Code-Segment + 1 Datensegment. 0 codelength 0 datalength. bs-5.4 1

5.4 Segmentierung. Einfachstes Beispiel: 1 Code-Segment + 1 Datensegment. 0 codelength 0 datalength. bs-5.4 1 5.4 Segmentierung Adressraum besteht aus mehreren Segmenten (segments), die unabhängig voneinander manipulierbar sind. Segmentierungsstruktur ist festgelegt durch die Hardware den Adressumsetzer. Einfachstes

Mehr

Besprechung der Probeklausur Übungsscheine, inoffizielle Evaluation Übungsaufgaben Noch Fragen?

Besprechung der Probeklausur Übungsscheine, inoffizielle Evaluation Übungsaufgaben Noch Fragen? Themen heute Besprechung der Probeklausur Übungsscheine, inoffizielle Evaluation Übungsaufgaben Noch Fragen? Besprechung der Probeklausur Probeklausur wird jetzt ausgeteilt Notenschlüssel: 45 37,5 Punkte:

Mehr