15
Jakob Dietschy Arnold Huber Karl Philip Schneider Lukas Unterberger Daniel Dötzl Gruppe 2 MEMORY MANAGEMENT

Jakob Dietschy Arnold Huber Karl Philip Schneider Lukas Unterberger Daniel Dötzl Gruppe 2 MEMORY MANAGEMENT

Embed Size (px)

Citation preview

Page 1: Jakob Dietschy Arnold Huber Karl Philip Schneider Lukas Unterberger Daniel Dötzl Gruppe 2 MEMORY MANAGEMENT

Jakob DietschyArnold Huber

Karl Philip SchneiderLukas Unterberger

Daniel Dötzl

Gruppe 2MEMORY MANAGEMENT

Page 2: Jakob Dietschy Arnold Huber Karl Philip Schneider Lukas Unterberger Daniel Dötzl Gruppe 2 MEMORY MANAGEMENT

Betriebssystem muss Funktionen zum Memory Management bereitstellen:

• Prozesse müssen effektiv im Hauptspeicher sein

• Nicht verwendetet Prozesse auslagern

Memory Management

Page 3: Jakob Dietschy Arnold Huber Karl Philip Schneider Lukas Unterberger Daniel Dötzl Gruppe 2 MEMORY MANAGEMENT

• Organisation zwischen Hauptspeicher und Sekundärspeicher

• Protection: schützt vor ungewolltem Zugriff anderer Prozesse auf einen Speicherbereich

• Sharing: mehrere Prozesse können auf einen gemeinsamen Speicherbereich zugreifen

Anforderungen an das Memory Management

Page 4: Jakob Dietschy Arnold Huber Karl Philip Schneider Lukas Unterberger Daniel Dötzl Gruppe 2 MEMORY MANAGEMENT

• Fixed Partitioning

• Dynamic Partitioning

• Buddy System

Positionierung Hauptspeicher

Page 5: Jakob Dietschy Arnold Huber Karl Philip Schneider Lukas Unterberger Daniel Dötzl Gruppe 2 MEMORY MANAGEMENT

Speicher wird entweder in gleich große oder verschieden große Partitionen auf gespaltet

Fixed Partitioning

Page 6: Jakob Dietschy Arnold Huber Karl Philip Schneider Lukas Unterberger Daniel Dötzl Gruppe 2 MEMORY MANAGEMENT

Partitionen sind variabel – in Bezug auf Größe und Anzahl

Dynamic Partitioning

Page 7: Jakob Dietschy Arnold Huber Karl Philip Schneider Lukas Unterberger Daniel Dötzl Gruppe 2 MEMORY MANAGEMENT

Compaction: Mechanismus des OS, der von Zeit zu Zeit die Prozesse im Speicher so verschiebt, dass Löcher wieder verschwinden. Sehr rechenzeitintensiv.

Durch Placement Algorithm werden Prozesse möglichst clever in Speicher eingelagert, sodass Effekt der externen Fragmentierung klein bleibt und Compaction möglichst selten aufgerufen werden muss.

Mögliche Placement Algorithmen: First-Fit, Next-Fit, Best-Fit

Externe Fragmentierung

Page 8: Jakob Dietschy Arnold Huber Karl Philip Schneider Lukas Unterberger Daniel Dötzl Gruppe 2 MEMORY MANAGEMENT

First-Fit

Best-Fit

Next-Fit

Placement Algorithmen

Page 9: Jakob Dietschy Arnold Huber Karl Philip Schneider Lukas Unterberger Daniel Dötzl Gruppe 2 MEMORY MANAGEMENT

Wegen der internen bzw. externen Fragmentierung beim Partitioning wurde Paging und Segmentierung entwickelt.

Paging & Segmentierung

Page 10: Jakob Dietschy Arnold Huber Karl Philip Schneider Lukas Unterberger Daniel Dötzl Gruppe 2 MEMORY MANAGEMENT

Hauptspeicher -> in kleine Frames unterteilt (Frames alle gleich groß !)

Prozesse werden in Pages unterteilt(Page genauso groß wie Frame !)

Paging

Page 11: Jakob Dietschy Arnold Huber Karl Philip Schneider Lukas Unterberger Daniel Dötzl Gruppe 2 MEMORY MANAGEMENT

Paging

Page 12: Jakob Dietschy Arnold Huber Karl Philip Schneider Lukas Unterberger Daniel Dötzl Gruppe 2 MEMORY MANAGEMENT

Prozesse werden in Segmente aufgeteiltTyp.Bsp.: Segment Programmteil

Segment dazugehörige Dateien

Die Segmente können bei der Einlagerung im Speicher beliebig platziert werden.

Diese müssen dabei nicht benachbart sein.

Segmentierung

Page 13: Jakob Dietschy Arnold Huber Karl Philip Schneider Lukas Unterberger Daniel Dötzl Gruppe 2 MEMORY MANAGEMENT

Sekundärspeicher

Page L Page F Page # Page F Page #

Aus-lagerung

Hauptspeicher

Global Replacement Policy

„Frame Locking“

Page LPage L

Page FPage F

Page #Page #

Page #Page #

Page FPage F

Local Replacement Policy

Page #Page #

Page #Page #Page #Page #

Resident-Set-ManagementVariable Allocation

Fixed Allocation

Aus-lagerung

Page 14: Jakob Dietschy Arnold Huber Karl Philip Schneider Lukas Unterberger Daniel Dötzl Gruppe 2 MEMORY MANAGEMENT

Replacement Policy

OPT – Optimal RPLRU – Last Recently Used RP

LRU – First-In-First-Out RPClock RP

Page Faults

Strategien - Algorithmen

Implementierung einfach aufwendig

gering hoch

Referenzierung Zeit Anzahl Aufrufe

Page 15: Jakob Dietschy Arnold Huber Karl Philip Schneider Lukas Unterberger Daniel Dötzl Gruppe 2 MEMORY MANAGEMENT

Jakob DietschyArnold Huber

Karl Philip SchneiderLukas Unterberger

Daniel Dötzl

Gruppe 2MEMORY MANAGEMENT