Gruppe 2 MEMORY MANAGEMENT Jakob Dietschy Arnold Huber Karl Philip Schneider Lukas Unterberger Daniel Dötzl
Memory Management Betriebssystem muss Funktionen zum Memory Management bereitstellen: Prozesse müssen effektiv im Hauptspeicher sein Nicht verwendetet Prozesse auslagern Jakob
Anforderungen an das 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
Positionierung Hauptspeicher Fixed Partitioning Dynamic Partitioning Buddy System
Fixed Partitioning Speicher wird entweder in gleich große oder verschieden große Partitionen auf gespaltet
Dynamic Partitioning Partitionen sind variabel – in Bezug auf Größe und Anzahl
Externe Fragmentierung 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 Arnold Huber
Placement Algorithmen First-Fit Best-Fit Next-Fit
Paging & Segmentierung Wegen der internen bzw. externen Fragmentierung beim Partitioning wurde Paging und Segmentierung entwickelt. Philip
Paging Hauptspeicher -> in kleine Frames unterteilt (Frames alle gleich groß !) Prozesse werden in Pages unterteilt (Page genauso groß wie Frame !)
Paging
Segmentierung Prozesse werden in Segmente aufgeteilt Typ.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.
Viritual Memory
Prozessbearbeitung
Virtual Memory Paging
Fetch Policy
Global Replacement Policy Local Replacement Policy Hauptspeicher Page L Page F Page # Page # Page F Page # Page # Page L Page F Page # Page # Page F Page # Page # Page L Page F Page # Page # Page F Page # Page # Aus- lagerung Aus- lagerung Resident-Set-Management Variable Allocation Fixed Allocation Sekundärspeicher „Frame Locking“
Strategien - Algorithmen Replacement Policy Strategien - Algorithmen OPT – Optimal RP LRU – Last Recently Used RP LRU – First-In-First-Out RP Clock RP Page Faults gering hoch Implementierung einfach aufwendig Referenzierung Zeit Anzahl Aufrufe
Gruppe 2 MEMORY MANAGEMENT Jakob Dietschy Arnold Huber Karl Philip Schneider Lukas Unterberger Daniel Dötzl