Betriebssysteme (BS) Inhalt. Speicherverwaltung. Olaf Spinczyk 1.

Größe: px
Ab Seite anzeigen:

Download "Betriebssysteme (BS) Inhalt. Speicherverwaltung. Olaf Spinczyk 1."

Transkript

1 Betriebssysteme (BS) Speicherverwaltung Olaf Spinczyk 1 olaf.spinczyk@tu-dortmund.de 1 In Zusammenarbeit mit Franz Hauck, Universität Ulm AG Eingebettete Systemsoftware Informatik 12, TU Dortmund Inhalt Wiederholung Grundlegende Aufgaben der Speicherverwaltung Anforderungen Strategien Speichervergabe Platzierungsstrategien Speicherverwaltung bei Mehrprogrammbetrieb Ein-/Auslagerung Relokation Segmentbasierte Adressabbildung Seitenbasierte Adressabbildung Zusammenfassung Silberschatz, Kap. 8: Memory-Management Strategies Tanenbaum, Kap. 4: Speicherverwaltung Betriebssysteme: 08 - Speicherverwaltung 2

2 Inhalt Wiederholung Grundlegende Aufgaben der Speicherverwaltung Anforderungen Strategien Speichervergabe Platzierungsstrategien Speicherverwaltung bei Mehrprogrammbetrieb Ein-/Auslagerung Relokation Segmentbasierte Adressabbildung Seitenbasierte Adressabbildung Zusammenfassung Betriebssysteme: 08 - Speicherverwaltung 3 Wiederholung: Betriebsmittel Das Betriebssystem hat folgende Aufgaben: Verwaltung der Betriebsmittel des Rechners Schaffung von Abstraktionen, die Anwendungen einen einfachen und effizienten Umgang mit Betriebsmitteln erlauben Bisher: Prozesse Konzept zur Abstraktion von der realen CPU Nun: Speicher Verwaltung von Haupt- und Hintergrundspeicher Hauptspeicher (Memory) Prozessor (CPU, Central Processing Unit) E/A-Geräte (I/O Devices) E/A-Schnittstellen (Interfaces) Hintergrundspeicher (Secondary Storage) Betriebssysteme: 08 - Speicherverwaltung 4

3 Wiederholung: Mehrprogrammbetrieb CPU-Auslastung unter Annahme einer bestimmten E/A-Wartewahrscheinlichkeit: A=1-p n Quelle: Tanenbaum, Moderne Betriebssysteme Mehrprogrammbetrieb ist essentiell für eine hohe Auslastung der CPU. Beim Starten und Beenden der Prozesse muss dynamisch Speicher zugewiesen bzw. zurückgenommen werden! Betriebssysteme: 08 - Speicherverwaltung 5 Inhalt Wiederholung Grundlegende Aufgaben der Speicherverwaltung Anforderungen Strategien Speichervergabe Platzierungsstrategien Speicherverwaltung bei Mehrprogrammbetrieb Ein-/Auslagerung Relokation Segmentbasierte Adressabbildung Seitenbasierte Adressabbildung Zusammenfassung Betriebssysteme: 08 - Speicherverwaltung 6

4 Anforderungen Mehrere Prozesse benötigen Hauptspeicher Prozesse liegen an verschiedenen Stellen im Hauptspeicher. Schutzbedürfnis des Betriebssystems und der Prozesse untereinander Speicher reicht eventuell nicht für alle Prozesse. Betriebssystem Prozess 1 Prozess 2 Das Betriebssystem und zwei Anwendungsprozesse im Hauptspeicher Freie Speicherbereiche kennen, verwalten und vergeben Ein- und Auslagern von Prozessen Relokation von Programmbefehlen Hardwareunterstützung ausnutzen Betriebssysteme: 08 - Speicherverwaltung 7 Grundlegende Politiken/Strategien Platzierungsstrategie (placement policy) obligatorisch Woher soll benötigter Speicher genommen werden? Wo der Verschnitt am kleinsten/größten ist Egal, weil Verschnitt zweitrangig ist Und zusätzlich bei Ein-/Auslagerung Ladestrategie (fetch policy) Wann sind Speicherinhalte aus dem Hintergrundspeicher in den Hauptspeicher zu laden? Auf Anforderung oder im Voraus Ersetzungsstrategie (replacement policy) Welche Speicherinhalte sind ggf. in den Hintergrundspeicher zu verdrängen, falls der Speicher knapp wird? Das älteste, am seltensten genutzte Das am längsten ungenutzte Betriebssysteme: 08 - Speicherverwaltung 8

5 Inhalt Wiederholung Grundlegende Aufgaben der Speicherverwaltung Anforderungen Strategien Speichervergabe Platzierungsstrategien Speicherverwaltung bei Mehrprogrammbetrieb Ein-/Auslagerung Relokation Segmentbasierte Adressabbildung Seitenbasierte Adressabbildung Zusammenfassung Betriebssysteme: 08 - Speicherverwaltung 9 Speichervergabe: Problemstellung Verfügbarer Speicher 0xffffffff ROM RAM Hauptspeicherbereich 2 E/A-Geräte Verfügbarer Adressraum (hier mit 32 Bit breiten Adressen) RAM Hauptspeicherbereich 1 0 Speicherlandkarte (Memory Map) eines fiktiven 32 Bit Systems Betriebssysteme: 08 - Speicherverwaltung 10

6 Speichervergabe: Problemstellung Belegung des verfügbaren Hauptspeichers durch Benutzerprogramme Programmbefehle (Code) Programmdaten (Data) Dynamische Speicheranforderungen (Stack, Heap) Betriebssystem Betriebssystemcode und -daten Prozesskontrollblöcke Datenpuffer für Ein-/Ausgabe Zuteilung des Speichers nötig Betriebssysteme: 08 - Speicherverwaltung 11 Statische Speicherzuteilung Feste Bereiche für Betriebssystem und Benutzerprogramme Probleme Grad des Mehrprogrammbetriebs begrenzt Begrenzung anderer Ressourcen (z.b. Bandbreite bei Ein-/Ausgabe wegen zu kleiner Puffer) Ungenutzter Speicher des Betriebssystems kann von Anwendungsprogrammen nicht genutzt werden und umgekehrt Dynamische Speicherzuteilung einsetzen Betriebssysteme: 08 - Speicherverwaltung 12

7 Dynamische Speicherzuteilung Segmente zusammenhängender Speicherbereich (Bereich mit aufeinanderfolgenden Adressen) Allokation (Belegung) und Freigabe von Segmenten Ein Anwendungsprogramm besitzt üblicherweise folgende Segmente: Codesegment Datensegment Stacksegment (lokale Variablen, Parameter, Rücksprungadressen, ) Suche nach geeigneten Speicherbereichen zur Zuteilung insbesondere beim Programmstart Platzierungsstrategien nötig Besonders wichtig dabei: Freispeicherverwaltung Betriebssysteme: 08 - Speicherverwaltung 13 Freispeicherverwaltung Freie (evtl. auch belegte) Segmente des Speichers müssen repräsentiert werden Bitlisten A B C D Speicher Bitliste markiert belegte Speicherbereiche Speichereinheiten gleicher Größe (z.b. 1 Byte, 64 Byte, 1024 Byte) Betriebssysteme: 08 - Speicherverwaltung 14

8 Freispeicherverwaltung (2) Verkettete Liste A B C D Speicher B 0 5 F 5 3 B 8 6 B 14 4 F 18 2 B 20 4 belegt/frei Länge Anfang Repräsentation auch von freien Segmenten Betriebssysteme: 08 - Speicherverwaltung 15 Freispeicherverwaltung (3) Verkettete Liste im freien Speicher A B C D Speicher 3 2 Länge Mindestlückengröße muss garantiert werden Zur Effizienzsteigerung eventuell Rückwärtsverkettung nötig Repräsentation letztlich auch von der Vergabestrategie abhängig Betriebssysteme: 08 - Speicherverwaltung 16

9 Speicherfreigabe Verschmelzung von Lücken A B C D Speicher 3 2 Nach Freigabe von B: A C 9 2 D Speicher Betriebssysteme: 08 - Speicherverwaltung 17 Platzierungsstrategien auf der Basis von unterschiedlich sortierten Löcherlisten: First Fit erste passende Lücke wird verwendet Rotating First Fit / Next Fit wie First Fit, aber Start bei der zuletzt zugewiesenen Lücke vermeidet viele kleine Lücken am Anfang der Liste (wie bei First Fit) Best Fit kleinste passende Lücke wird gesucht Worst Fit größte passende Lücke wird gesucht Probleme: zu kleine Lücken Speicherverschnitt Betriebssysteme: 08 - Speicherverwaltung 18

10 Platzierungsstrategien (2) Das Buddy-Verfahren Einteilung in dynamische Bereiche der Größe 2 n Anfrage 70 Anfrage 35 Anfrage 80 Freigabe A Anfrage 60 Freigabe B Freigabe D Freigabe C A A B A B 64 C 128 B B D D 256 C C C C Effiziente Repräsentation der Lücken und effiziente Algorithmen Betriebssysteme: 08 - Speicherverwaltung 19 Diskussion: Verschnitt Externer Verschnitt Außerhalb der zugeteilten Speicherbereich entstehen Speicherfragmente, die nicht mehr genutzt werden können. Passiert bei den listenbasierten Strategien wie First Fit, Best Fit, Interner Verschnitt Innerhalb der zugeteilten Speicherbereiche gibt es ungenutzten Speicher. Passiert z.b. bei Buddy, da die Anforderungen auf die nächstgrößere Zweierpotenz aufgerundet werden Betriebssysteme: 08 - Speicherverwaltung 20

11 Zwischenfazit: Einsatz der Verfahren Einsatz im Betriebssystem Verwaltung des Systemspeichers Zuteilung von Speicher an Prozesse und Betriebssystem Einsatz innerhalb eines Prozesses Verwaltung des Haldenspeichers (Heap) erlaubt dynamische Allokation von Speicherbereichen durch den Prozess (malloc und free) Einsatz für Bereiche des Sekundärspeichers Verwaltung bestimmter Abschnitte des Sekundärspeichers, z.b. Speicherbereich für Prozessauslagerungen (swap space) Betriebssysteme: 08 - Speicherverwaltung 21 Inhalt Wiederholung Grundlegende Aufgaben der Speicherverwaltung Anforderungen Strategien Speichervergabe Platzierungsstrategien Speicherverwaltung bei Mehrprogrammbetrieb Ein-/Auslagerung Relokation Segmentbasierte Adressabbildung Seitenbasierte Adressabbildung Zusammenfassung Betriebssysteme: 08 - Speicherverwaltung 22

12 Ein-/Auslagerung (swapping) Segmente eines Prozesses werden auf Hintergrundspeicher ausgelagert und im Hauptspeicher freigegeben z.b. zur Überbrückung von Wartezeiten bei E/A oder Round-Robin Schedulingstrategie Einlagern der Segmente in den Hauptspeicher am Ende der Wartezeit Betriebssystem Hauptspeicher Prozess 1 Prozess 1 Hintergrundspeicher Prozess 2 Prozess 2 Ein-/Auslagerzeit ist hoch Latenzzeit der Festplatte Übertragungszeit Betriebssysteme: 08 - Speicherverwaltung 23 Ein-/Auslagerung (2) Adressen im Prozess sind statisch gebunden kann nur an gleiche Stelle im Hauptspeicher wieder eingelagert werden Kollisionen mit eventuell neu im Hauptspeicher befindlichen Segmenten Mögliche Lösung: Partitionierung des Hauptspeichers In jeder Partition läuft nur ein Prozess Einlagerung erfolgt wieder in die gleiche Partition Speicher kann nicht optimal genutzt werden Betriebssystem Partition 1 Partition 2 Partition 3 Partition 4 Besser: Dynamische Belegung und Programmrelokation Betriebssysteme: 08 - Speicherverwaltung 24

13 Adressbindung und Relokation Problem: Maschinenbefehle benutzen absolute Adressen z.b. ein Sprungbefehl in ein Unterprogramm oder ein Ladebefehl für eine Variable aus dem Datensegment Es gibt verschiedene Möglichkeiten, die Adressbindung zwischen dem Befehl und seinem Operanden herzustellen Absolutes Binden (Compile Time) Adressen stehen fest Programm kann nur an bestimmter Speicherstelle korrekt ablaufen Statisches Binden (Load Time) Beim Laden (Starten) des Programms werden die absoluten Adressen angepasst (reloziert) Relokationsinformation nötig, die vom Compiler oder Assembler geliefert wird Dynamisches Binden (Execution Time) Der Code greift grundsätzlich nur indirekt auf Operanden zu. Das Programm kann jederzeit im Speicher verschoben werden Betriebssysteme: 08 - Speicherverwaltung 25 Adressbindung und Relokation (2) Übersetzungsvorgang (Erzeugung der Relokationsinformationen) test.c test.s test.o C-Programm int main () { exit (0); } Assembler main: pushl %ebp movl %esp,%ebp pushl $0 call exit addl $4,%esp popl %ebp ret Bindemodul E A E a 83C d 89EC 000f 5D 0010 C3 Erzeugung beim Übersetzungsvorgang main: : exit ADDR32 ersetze Adresse von exit Betriebssysteme: 08 - Speicherverwaltung 26

14 Adressbindung und Relokation (3) Binde- und Ladevorgang test.o Bindemodul E A E a 83C d 89EC 000f 5D 0010 C3 main: : exit ADDR32 test Lademodul =0x E A E a 83C d 89EC 003f 5D 0040 C3 0036: ADDR32 TXT Prozess Speicherabbild =0x E A E a 83C d 89EC 213f 5D 2140 C3 ersetze Adresse von exit ersetze Adresse relativ zum Befehlssegment Adresse ist nun absolut Befehlssegment: Betriebssysteme: 08 - Speicherverwaltung 27 Adressbindung und Relokation (4) Relokationsinformation im Bindemodul erlaubt das Binden von Modulen in beliebige Programme Relokationsinformation im Lademodul erlaubt das Laden des Programms an beliebige Speicherstellen absolute Adressen werden erst beim Laden generiert Dynamisches Binden mit Compiler-Unterstützung Programm benutzt keine absoluten Adressen und kann daher immer an beliebige Speicherstellen geladen werden Position Independent Code Dynamisches Binden mit MMU-Unterstützung: Abbildungsschritt von logischen auf physikalische Adressen Relokation beim Binden reicht (außer für Shared Libraries ) Betriebssysteme: 08 - Speicherverwaltung 28

15 Inhalt Wiederholung Grundlegende Aufgaben der Speicherverwaltung Anforderungen Strategien Speichervergabe Platzierungsstrategien Speicherverwaltung bei Mehrprogrammbetrieb Ein-/Auslagerung Relokation Segmentbasierte Adressabbildung Seitenbasierte Adressabbildung Zusammenfassung Betriebssysteme: 08 - Speicherverwaltung 29 Segmentierung Hardwareunterstützung: Abbildung logischer auf physikalische Adressen logischer Adressraum physikalischer Adressraum ROM + 0x x54ffff 0x xfffff 0 + 0x RAM 0x1fffff 0x Das Segment des logischen Adressraums kann an jeder beliebigen Stelle im physikalischen Adressraum liegen. Das Betriebssystem bestimmt, wo ein Segment im physikalischen Adressraum tatsächlich liegen soll Betriebssysteme: 08 - Speicherverwaltung 30

16 Segmentierung (2) Realisierung mit Übersetzungstabelle Segmenttabellenbasisregister Segmenttabelle Startadr. Länge a02 logische Adresse ffe0 f fff ja < + Trap: Schutzverletzung ffe1 3a02 physikalische Adresse Betriebssysteme: 08 - Speicherverwaltung 31 Segmentierung (3) Hardware heißt MMU (Memory Management Unit) Schutz vor Segmentübertretung Rechte zum Lesen, Schreiben und Ausführen von Befehlen, die von der MMU geprüft werden Trap zeigt Speicherverletzung an Programme und Betriebssystem voreinander geschützt Prozessumschaltung durch Austausch der Segmentbasis jeder Prozess hat eigene Übersetzungstabelle Ein- und Auslagerung vereinfacht nach Einlagerung an beliebige Stelle muss lediglich die Übersetzungstabelle angepasst werden Gemeinsame Segmente möglich Befehlssegmente Datensegmente (Shared Memory) Betriebssysteme: 08 - Speicherverwaltung 32

17 Segmentierung (4) Probleme Fragmentierung des Speichers durch häufiges Ein- und Auslagern Es entstehen kleine, nicht nutzbare Lücken: externer Verschnitt Kompaktifizieren hilft Segmente werden verschoben, um Lücken zu schließen; Segmenttabelle wird jeweils angepasst Kostet aber Zeit Lange E/A-Zeiten für Ein- und Auslagerung Nicht alle Teile eines Segments werden gleich häufig genutzt Betriebssysteme: 08 - Speicherverwaltung 33 Kompaktifizieren Verschieben von Segmenten Erzeugen von weniger aber größeren Lücken Verringern des Verschnitts aufwendige Operation, abhängig von der Größe der verschobenen Segmente Ausgangslage 700 K verschoben 300 K verschoben P1 P1 P1 400K 400K 400K 300K P2 700K 700K P2 1000K 1100K 400K P3 1000K 1400K 1400K P3 1000K P3 1800K 1800K 300K 2100K 2100K 2100K P Betriebssysteme: 08 - Speicherverwaltung 34

18 Inhalt Wiederholung Grundlegende Aufgaben der Speicherverwaltung Anforderungen Strategien Speichervergabe Platzierungsstrategien Speicherverwaltung bei Mehrprogrammbetrieb Ein-/Auslagerung Relokation Segmentbasierte Adressabbildung Seitenbasierte Adressabbildung Zusammenfassung Betriebssysteme: 08 - Speicherverwaltung 35 Seitenadressierung (paging) Einteilung des logischen Adressraums in gleichgroße Seiten, die an beliebigen Stellen im physikalischen Adressraum liegen können Lösung des Fragmentierungsproblems keine Kompaktifizierung mehr nötig Vereinfacht Speicherbelegung und Ein-/Auslagerungen logischer Adressraum physikalischer Adressraum ROM Seiten (pages) Kacheln (frames) RAM Betriebssysteme: 08 - Speicherverwaltung 36

19 MMU mit Seiten-Kacheltabelle Tabelle setzt Seiten in Kacheln um SKT Basisregister Seiten-Kacheltabelle Startadr. ffe0 fxxx a logische Adresse ffe0f 12a physikalische Adresse Betriebssysteme: 08 - Speicherverwaltung 37 MMU mit Seiten-Kacheltabelle (2) Seitenadressierung erzeugt internen Verschnitt letzte Seite eventuell nicht vollständig genutzt Seitengröße kleine Seiten verringern internen Verschnitt, vergrößern aber die Seiten-Kacheltabelle (und umgekehrt) übliche Größen: 512 Bytes 8192 Bytes große Tabelle, die im Speicher gehalten werden muss viele implizite Speicherzugriffe nötig nur ein Segment pro Kontext sinngemäße Nutzung des Speichers schwerer zu kontrollieren (push/pop nur auf Stack, Ausführung nur von Text, ) Kombination mit Segmentierung Betriebssysteme: 08 - Speicherverwaltung 38

20 Segmentierung und Seitenadressierung Segmenttabellenbasisregister logische Adresse a Segmenttabelle + Seiten-Kacheltabelle SKT Zeiger Seitenzahl Startadr ffe0 fxxx < ja Trap: Schutzverletzung physikalische Adresse ffe0f 12a Betriebssysteme: 08 - Speicherverwaltung 39 Segm. und Seitenadressierung (2) Noch mehr implizite Speicherzugriffe Große Tabellen im Speicher Vermischung der Konzepte Noch immer Ein-/Auslagerung kompletter Segmente Mehrstufige Seitenadressierung mit Ein- und Auslagerung Betriebssysteme: 08 - Speicherverwaltung 40

21 Ein-/Auslagerung von Seiten Es ist nicht nötig ein gesamtes Segment aus- bzw. einzulagern Seiten können einzeln ein- und ausgelagert werden Hardware-Unterstützung Ist das Präsenzbit gesetzt, bleibt alles wie bisher. Ist das Präsenzbit gelöscht, wird ein Trap ausgelöst (page fault). Die Trap-Behandlung kann nun für das Laden der Seite vom Hintergrundspeicher sorgen und den Speicherzugriff danach wiederholen (benötigt HW-Support in der CPU). Seiten-Kacheltabelle Startadr. Präsenzbit ffe0 fxxx X Betriebssysteme: 08 - Speicherverwaltung 41 Mehrstufige Seitenadressierung Beispiel: zweifach indirekte Seitenadressierung logische Adresse a Präsenzbit auch für jeden Eintrag in den höheren Stufen Tabellen werden aus- und einlagerbar Tabelle können bei Zugriff (=Bedarf) erzeugt werden (spart Speicher!) Aber: Noch mehr implizite Speicherzugriffe Betriebssysteme: 08 - Speicherverwaltung 42

22 Translation Look-Aside Buffer (TLB) Schneller Registersatz wird konsultiert bevor auf die SKT zugegriffen wird: SKT Basisregister Seiten-Kacheltabelle Startadr. ffe0 fxxx a Translation Look Aside Buffer (TLB) a0123 bfff4 ffe0f logische Adresse ffe0f physikalische Adresse Betriebssysteme: 08 - Speicherverwaltung 43 12a Translation Look-Aside Buffer (2) Schneller Zugriff auf Seitenabbildung, falls Information im voll-assoziativen Speicher des TLB keine impliziten Speicherzugriffe nötig Bei Kontextwechseln muss TLB gelöscht werden (flush) Bei Zugriffen auf eine nicht im TLB enthaltene Seite wird die entsprechende Zugriffsinformation in den TLB eingetragen Ein alter Eintrag muss zur Ersetzung ausgesucht werden TLB Größe Intel Core i7: 512 Einträge, Seitengröße 4K UltraSPARC T2: Daten TLB = 128, Code TLB = 64, Seitengröße 8K Größere TLBs bei den üblichen Taktraten zur Zeit nicht möglich Betriebssysteme: 08 - Speicherverwaltung 44

23 Invertierte Seiten-Kacheltabelle Bei großen logischen Adressräumen (z.b. 64 Bit): Klassische Seiten-Kacheltabellen sehr groß (oder ) Sehr viele Abbildungsstufen Tabellen sehr dünn besetzt Invertierte Seiten-Kacheltabelle (Inverted Page Table) PID logische Adresse a Suche Kachel- physikalische Adresse Betriebssysteme: 08 - Speicherverwaltung 45 Seitentabelle ffe0f 12a Invertierte Seiten-Kacheltabelle (2) Vorteile wenig Platz zur Speicherung der Abbildung notwendig Tabelle kann immer im Hauptspeicher gehalten werden Nachteile Sharing von Kacheln schwer zu realisieren prozesslokale SKT zusätzlich nötig für Seiten, die ausgelagert sind diese können aber ausgelagert werden Suche in der KST ist aufwendig Einsatz von Assoziativspeichern und Hashfunktionen Trotz der Nachteile setzen heute viele Prozessorhersteller bei 64-Bit-Architekturen auf diese Form der Adressumsetzung UltraSparc, PowerPC, IA-64, (Alpha), Betriebssysteme: 08 - Speicherverwaltung 46

24 Inhalt Wiederholung Grundlegende Aufgaben der Speicherverwaltung Anforderungen Strategien Speichervergabe Platzierungsstrategien Speicherverwaltung bei Mehrprogrammbetrieb Ein-/Auslagerung Relokation Segmentbasierte Adressabbildung Seitenbasierte Adressabbildung Zusammenfassung Betriebssysteme: 08 - Speicherverwaltung 47 Zusammenfassung Bei der Speicherverwaltung arbeitet das Betriebssystem sehr eng mit der Hardware zusammen. Segmentierung und/oder Seitenadressierung Durch die implizite Indirektion beim Speicherzugriff können Programme und Daten unter der Kontrolle des Betriebssystems im laufenden Betrieb beliebig verschoben werden. Zusätzlich sind diverse strategische Entscheidungen zu treffen. Platzierungsstrategie (First Fit, Best Fit, Buddy, ) Unterscheiden sich bzgl. Verschnitt sowie Belegungs- und Freigabeaufwand. Strategieauswahl hängt vom erwarteten Anwendungsprofil ab. Bei Ein-/Auslagerung von Segmenten oder Seiten: Ladestrategie Ersetzungsstrategie nächstes Mal mehr dazu Betriebssysteme: 08 - Speicherverwaltung 48

Betriebssysteme (BS) Speicherverwaltung. Olaf Spinczyk 1.

Betriebssysteme (BS) Speicherverwaltung. Olaf Spinczyk 1. Betriebssysteme (BS) Speicherverwaltung http://ess.cs.tu-dortmund.de/de/teaching/ss2016/bs/ Olaf Spinczyk 1 olaf.spinczyk@tu-dortmund.de http://ess.cs.tu-dortmund.de/~os 1 In Zusammenarbeit mit Franz Hauck,

Mehr

Betriebssysteme (BS)

Betriebssysteme (BS) Betriebssysteme (BS) Speicherverwaltung Olaf Spinczyk 1 Arbeitsgruppe Eingebettete Systemsoftware Lehrstuhl für Informatik 12 TU Dortmund Olaf.Spinczyk@tu-dortmund.de http://ess.cs.uni-dortmund.de/~os/

Mehr

Betriebssysteme, Rechnernetze und verteilte Systeme 1 (BSRvS 1)

Betriebssysteme, Rechnernetze und verteilte Systeme 1 (BSRvS 1) Betriebssysteme, Rechnernetze und verteilte Systeme 1 (BSRvS 1) Speicherverwaltung Olaf Spinczyk 1 Arbeitsgruppe Eingebettete Systemsoftware Lehrstuhl für Informatik 12 TU Dortmund Olaf.Spinczyk@tu-dortmund.de

Mehr

E Speicherverwaltung. 1 Speichervergabe. E Speicherverwaltung. 1.1 Problemstellung (2) 1.1 Problemstellung. Verfügbarer Speicher.

E Speicherverwaltung. 1 Speichervergabe. E Speicherverwaltung. 1.1 Problemstellung (2) 1.1 Problemstellung. Verfügbarer Speicher. Speichervergabe. Problemstellung Verfügbarer Speicher Speicherverwaltung ROM xffffffff in-/ausgabegeräte RAM verfügbarer verfügbarer Adressraum (hier mit Bit breiten Adressen) 997-, F. J. Hauck, W. Schröder-Preikschat,

Mehr

Grundlagen der Informatik für Ingenieure I. Background 6. Speicherverwaltungssystem

Grundlagen der Informatik für Ingenieure I. Background 6. Speicherverwaltungssystem ackground. Speicherverwaltungssystem... Problemstellung... ynamische Speicherzuteilung... Vergabestrategien.. Mehrprogrammbetrieb... Problemstellung... Relokation und inden.. Segmentierung.. Seitenadress

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

Grundlagen der Informatik für Ingenieure I

Grundlagen der Informatik für Ingenieure I Speicherverwaltungssystem. Speichervergabe... Problemstellung... Dynamische Speicherzuteilung... Vergabestrategien... uddy Systeme... insatz der Verfahren.. Mehrprogrammbetrieb... Problemstellung... Relokation

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

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

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

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

Grundlagen der Betriebssysteme

Grundlagen der Betriebssysteme Grundlagen der Betriebssysteme [CS2100] Sommersemester 2014 Heiko Falk Institut für Eingebettete Systeme/Echtzeitsysteme Ingenieurwissenschaften und Informatik Universität Ulm Kapitel 6 Speicherverwaltung

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

Betriebssysteme (BS)

Betriebssysteme (BS) Betriebssysteme (BS) Virtueller Speicher Olaf Spinczyk Arbeitsgruppe Eingebettete Systemsoftware Lehrstuhl für Informatik 2 TU Dortmund Olaf.Spinczyk@tu-dortmund.de http://ess.cs.uni-dortmund.de/~os/ In

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

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

E Speicherverwaltung. 1 Speichervergabe. E Speicherverwaltung. 1.1 Problemstellung (2) 1.1 Problemstellung. Verfügbarer Speicher.

E Speicherverwaltung. 1 Speichervergabe. E Speicherverwaltung. 1.1 Problemstellung (2) 1.1 Problemstellung. Verfügbarer Speicher. Speichervergabe. Problemstellung Verfügbarer Speicher Speicherverwaltung ROM xffffffff in-/usgabegeräte RM verfügbarer verfügbarer dressraum (hier mit it breiten dressen) 99-,. J. Hauck, W. Schröder-Preikschat,

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

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

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

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

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

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

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

Ü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

Konzepte von Betriebssystem- Komponenten Olessia Usik 20. Juni 2005

Konzepte von Betriebssystem- Komponenten Olessia Usik 20. Juni 2005 Konzepte von Betriebssystem- Komponenten Olessia Usik olessia@freenet.de 20. Juni 2005 1 GROß 2 SCHNELL UNENDLICH Gliederung 1. Einleitung 2. Swapping 3. Virtuelle Speicherverwaltung 3.1 Segmentorientierter

Mehr

RO-Tutorien 17 und 18

RO-Tutorien 17 und 18 RO-Tutorien 17 und 18 Tutorien zur Vorlesung Rechnerorganisation Christian A. Mandery TUTORIENWOCHE 12 AM 19.07.2012 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der

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

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

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

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

Betriebssysteme BS-S SS Hans-Georg Eßer. Foliensatz S: Speicherverwaltung. Dipl.-Math., Dipl.-Inform. v1.0, 2015/04/14

Betriebssysteme BS-S SS Hans-Georg Eßer. Foliensatz S: Speicherverwaltung. Dipl.-Math., Dipl.-Inform. v1.0, 2015/04/14 BS-S Betriebssysteme SS 2015 Hans-Georg Eßer Dipl.-Math., Dipl.-Inform. Foliensatz S: Speicherverwaltung v1.0, 2015/04/14 Betriebssysteme, SS 2015 Hans-Georg Eßer Folie S-1 Übersicht: BS Praxis und BS

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 guthier@pi4.informatik.uni-mannheim.de 22.05.09 11-1 Heutige große Übung Ankündigung

Mehr

Betriebssysteme I WS 2016/2017. Betriebssysteme / verteilte Systeme Tel.: 0271/ , Büro: H-B 8404

Betriebssysteme I WS 2016/2017. Betriebssysteme / verteilte Systeme Tel.: 0271/ , Büro: H-B 8404 Betriebssysteme I WS 2016/2017 Betriebssysteme / verteilte Systeme rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404 Stand: 2. Februar 2017 Betriebssysteme / verteilte Systeme Betriebssysteme

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

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

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

Betriebssysteme (BS)

Betriebssysteme (BS) Betriebssysteme (BS) Probeklausur Olaf Spinczyk, Daniel Cordes und Matthias Meier Arbeitsgruppe Eingebettete Systemsoftware Lehrstuhl für Informatik 12 TU Dortmund http://ess.cs.uni-dortmund.de/ http://ess.cs.tu-dortmund.de/de/teaching/ss2012/bs/

Mehr

K Speicherverwaltung K.2

K Speicherverwaltung K.2 inordnung K Speicherverwaltung bene bene bene bene bene bene bene Problemorientierte Sprache ssemblersprache etriebssystem IS (Instruction Set rchitecture) Mikroarchitektur igitale Logik Physik K. K. Phänomen

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

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

Naiver Ansatz. Blöcke und Seiten. Betriebssysteme I Sommersemester 2009 Kapitel 6: Speicherverwaltung und Dateisysteme

Naiver Ansatz. Blöcke und Seiten. Betriebssysteme I Sommersemester 2009 Kapitel 6: Speicherverwaltung und Dateisysteme Betriebssysteme I Sommersemester 2009 Kapitel 6: Speicherverwaltung und Dateisysteme Hans-Georg Eßer Hochschule München Teil 3: Zusammenhängende Speicherzuordnung 06/2009 Hans-Georg Eßer Hochschule München

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

Betriebssysteme. Tafelübung 4. Speicherverwaltung. Olaf Spinczyk.

Betriebssysteme. Tafelübung 4. Speicherverwaltung. Olaf Spinczyk. Betriebssysteme Tafelübung 4. Speicherverwaltung http://ess.cs.tu-dortmund.de/de/teaching/ss217/bs/ Olaf Spinczyk olaf.spinczyk@tu-dortmund.de http://ess.cs.tu-dortmund.de/~os AG Eingebettete Systemsoftware

Mehr

Betriebssysteme. Agenda. Tafelübung 4. Speicherverwaltung. Olaf Spinczyk.

Betriebssysteme. Agenda. Tafelübung 4. Speicherverwaltung. Olaf Spinczyk. Betriebssysteme Tafelübung 4. Speicherverwaltung http://ess.cs.tu-dortmund.de/de/teaching/ss217/bs/ Olaf Spinczyk olaf.spinczyk@tu-dortmund.de http://ess.cs.tu-dortmund.de/~os AG Eingebettete Systemsoftware

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

7. Speicherverwaltung

7. Speicherverwaltung 7. Speicherverwaltung Ziele Zuteilung des Arbeitsspeicher Abbildung der symbolischen Adresse auf die physikalische Adresse Adress-Transformation Symbolische Adresse verschiebbare Adresse physikalische

Mehr

Betriebssysteme Studiengang Informatik / SAT

Betriebssysteme Studiengang Informatik / SAT Betriebssysteme Studiengang Informatik / SAT Dipl.-Inf., Dipl.-Ing. (FH) Michael Wilhelm Hochschule Harz FB Automatisierung und Informatik mwilhelm@hs-harz.de http://www.miwilhelm.de Raum 2.202 Tel. 03943

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

Betriebssysteme. Tafelübung: Klausurvorbereitungsstunde. Olaf Spinczyk.

Betriebssysteme. Tafelübung: Klausurvorbereitungsstunde. Olaf Spinczyk. Betriebssysteme Tafelübung: Klausurvorbereitungsstunde http://ess.cs.tu-dortmund.de/de/teaching/ss2016/bs/ Olaf Spinczyk olaf.spinczyk@tu-dortmund.de http://ess.cs.tu-dortmund.de/~os AG Eingebettete Systemsoftware

Mehr

Betriebssysteme (BS)

Betriebssysteme (BS) Betriebssysteme (BS) Probeklausur Olaf Spinczyk Arbeitsgruppe Eingebettete Systemsoftware Lehrstuhl für Informatik 12 TU Dortmund http://ess.cs.uni-dortmund.de/ http://ess.cs.tu-dortmund.de/de/teaching/ss2014/bs/

Mehr

Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung

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

Mehr

1. Welche Speichereinheiten werden belegt, wenn die folgenden Strategien eingesetzt werden?

1. Welche Speichereinheiten werden belegt, wenn die folgenden Strategien eingesetzt werden? Sommersemester 009 Konzepte und Methoden der Systemsoftware Universität Paderborn Fachgebiet Rechnernetze Hausübung 05 Abgabe am 0.07.009 (Kästen D) Aufgabe : Speicherzuteilung (6++=8 Punkte) Es sei der

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 zhang@informatik.uni-hamburg.de Universität Hamburg AB Technische Aspekte Multimodaler Systeme

Mehr

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

Medienpraktikum Medienpsychologie. Seminar für Pädagogik, Universität Ulm Sommersemester Anne Wilzek Doreen Eichler Medienpraktikum Medienpsychologie Seminar für Pädagogik, Universität Ulm Sommersemester 2005 Anne Wilzek Doreen Eichler Betreuer: Dr. Markus Dresel, Frank Schumacher Thema: Erarbeitung multimedialer Inhalte

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

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

1. Speicher. Typische Nutzung eines Adreßraums. Systemsoftware. Textbereich relativ klein. Sehr großer Abstand zwischen Heap und Stack 1. Speicher 1 Typische Nutzung eines Adreßraums Textbereich relativ klein Sehr großer Abstand zwischen Heap und Stack Keine Verunreinigungen durch: E/A-Bereiche nicht bestückte Adreßbereiche fremde Kontrollflüsse

Mehr

U4-1 Aufgabe 3: einfache malloc-implementierung

U4-1 Aufgabe 3: einfache malloc-implementierung U4 3. Übung U4 3. Übung Besprechung der Aufgabe 2: wsort Aufgabe 3: malloc-implementierung Ziele der Aufgabe Zusammenhang zwischen "nacktem Speicher" und typisierten bereichen verstehen Funktion aus der

Mehr

Zuteilungseinheiten und Verschnitt Vielfaches von Bytes oder Seitenrahmen. Überblick

Zuteilungseinheiten und Verschnitt Vielfaches von Bytes oder Seitenrahmen. Überblick Überblick 12 Arbeitsspeicher 12 Arbeitsspeicher 12.1 Speicherzuteilung Zuteilungseinheiten und Verschnitt Vielfaches von Bytes oder Seitenrahmen Adressraum Physikalischer Adressraum Logischer Adressraum

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

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

Systeme I: Betriebssysteme Kapitel 4 Prozesse. Wolfram Burgard

Systeme I: Betriebssysteme Kapitel 4 Prozesse. Wolfram Burgard Systeme I: Betriebssysteme Kapitel 4 Prozesse Wolfram Burgard Version 18.11.2015 1 Inhalt Vorlesung Aufbau einfacher Rechner Überblick: Aufgabe, Historische Entwicklung, unterschiedliche Arten von Betriebssystemen

Mehr

1 Fehler in Bibliotheksfunktionen. 1 Überblick. 2 Ziele der Aufgabe. Besprechung der 1. Aufgabe

1 Fehler in Bibliotheksfunktionen. 1 Überblick. 2 Ziele der Aufgabe. Besprechung der 1. Aufgabe U3 3. Übung U3 3. Übung U3-1 Fehlerbehandlung U3-1 Fehlerbehandlung Besprechung der 1. Aufgabe Fehlerbehandlung Infos zur Aufgabe 3: malloc-implementierung U3.1 Fehler können aus unterschiedlichsten Gründen

Mehr

e) Welche Aussage zu Speicherzuteilungsverfahren ist falsch?

e) Welche Aussage zu Speicherzuteilungsverfahren ist falsch? Aufgabe 1: (1) Bei den Multiple-Choice-Fragen ist jeweils nur eine richtige Antwort eindeutig anzukreuzen. Auf die richtige Antwort gibt es die angegebene Punktzahl. Wollen Sie eine Multiple-Choice-Antwort

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

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

5.5 Virtueller Speicher

5.5 Virtueller Speicher 5.5 Virtueller Speicher Wenn der reale Speicher sogar für einzelne Prozesse zu klein ist : Virtueller Speicher (virtual memory), ist beliebig groß, nimmt alle Prozesse auf, ist in gleichgroße Teile Seiten

Mehr

6.5 Semaphor (4) 6.5 Semaphor (6) 7 Klassische Koordinierungsprobleme. 6.5 Semaphor (5) Abstrakte Beschreibung von zählenden Semaphoren (PV System)

6.5 Semaphor (4) 6.5 Semaphor (6) 7 Klassische Koordinierungsprobleme. 6.5 Semaphor (5) Abstrakte Beschreibung von zählenden Semaphoren (PV System) 6.5 Semaphor (4) 6.5 Semaphor (6) V-Operation Unterbrechungen sperren *s = *s+ alle Prozess aus der Warteschlange in den Zustand bereit versetzen Unterbrechungen freigeben Prozessumschalter ansteuern Prozesse

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

Grundlagen Rechnerarchitektur und Betriebssysteme

Grundlagen Rechnerarchitektur und Betriebssysteme Grundlagen Rechnerarchitektur und Betriebssysteme Johannes Formann Definition Computer: Eine Funktionseinheit zur Verarbeitung von Daten, wobei als Verarbeitung die Durchführung mathematischer, umformender,

Mehr

Hans-Georg Eßer, Hochschule München, Betriebssysteme I, SS Speicherverwaltung 1

Hans-Georg Eßer, Hochschule München, Betriebssysteme I, SS Speicherverwaltung 1 Sep 19 14:20:18 amd64 sshd[20494]: Accepted rsa for esser from ::ffff:87.234.201.207 port 61557 Sep 19 14:27:41 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 20 01:00:01 amd64 /usr/sbin/cron[29278]: (root)

Mehr

Verwaltung des Arbeitsspeichers: Fragmente

Verwaltung des Arbeitsspeichers: Fragmente Überblick 12 Arbeitsspeicher Adressraum Physikalischer Adressraum Logischer Adressraum Virtueller Adressraum Zusammenfassung Arbeitsspeicher Speicherzuteilung Platzierungsstrategie Ladestrategie Ersetzungsstrategie

Mehr

Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung

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

Mehr

Betriebssysteme. Probeklausur. Olaf Spinczyk.

Betriebssysteme. Probeklausur. Olaf Spinczyk. Betriebssysteme https://ess.cs.tu-dortmund.de/de/teaching/ss/bs/ Olaf Spinczyk olaf.spinczyk@tu-dortmund.de https://ess.cs.tu-dortmund.de/~os G Eingebettete Systemsoftware Informatik, TU Dortmund blauf

Mehr

Betriebssysteme. Tafelübung 4. Speicherverwaltung. Olaf Spinczyk.

Betriebssysteme. Tafelübung 4. Speicherverwaltung. Olaf Spinczyk. Betriebssysteme Tafelübung 4. Speicherverwaltung https://ess.cs.tu-dortmund.de/de/teaching/ss2018/bs/ Olaf Spinczyk olaf.spinczyk@tu-dortmund.de https://ess.cs.tu-dortmund.de/~os AG Eingebettete Systemsoftware

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

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

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

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

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

Memory Management. Peter Puschner Institut für Technische Informatik peter@vmars.tuwien.ac.at

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

Mehr

Informatik I WS 07/08 Tutorium 24

Informatik I WS 07/08 Tutorium 24 Info I Tutorium 24 Informatik I WS 07/08 Tutorium 24 31.01.08 Bastian Molkenthin E-Mail: infotut@sunshine2k.de Web: http://infotut.sunshine2k.de Organisatorisches Anmeldung Hauptklausur : allerspätestens

Mehr

Computeranwendung in der Chemie Informatik für Chemiker(innen) 3. Software

Computeranwendung in der Chemie Informatik für Chemiker(innen) 3. Software Computeranwendung in der Chemie Informatik für Chemiker(innen) 3. Software Jens Döbler 2003 "Computer in der Chemie", WS 2003-04, Humboldt-Universität VL3 Folie 1 Grundlagen Software steuert Computersysteme

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

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

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

Echtzeit-Multitasking

Echtzeit-Multitasking Technische Informatik Klaus-Dieter Thies Echtzeit-Multitasking Memory Management und System Design im Protected Mode der x86/pentium-architektur. Shaker Verlag Aachen 2002 Die Deutsche Bibliothek - CIP-Einheitsaufnahme

Mehr

Echtzeit-Multitasking

Echtzeit-Multitasking Technische Informatik Klaus-Dieter Thies Echtzeit-Multitasking Memory Management und System Design im Protected Mode der x86/pentium-architektur. Shaker Verlag Aachen 2002 Die Deutsche Bibliothek - CIP-Einheitsaufnahme

Mehr