ZHAW BSY Kap7
zhaw
zhaw
-
- 1 / 19
-
Flashcards
Wieso kann Speicherschutz nicht schon zur Kompilationszeit erreicht werden?
Der Speicherbedarf ist zur Kompilationszeit in den meisten Fällen nicht bekannt: dynamische Speicherallokation, Stack, etc.
Was ist der Unterschied zwischen interner und externer Fragmentierung?
Interne Fragmentierung: Speicher wird in Blöcke gleicher Grösse aufgeteilt: ein solcher dieser Bl ̈ocke wird nicht vollst ̈andig genutzt.
External fragmentation • Grösse und Anzahl der Partitionen variabel - jedem Prozess soviel Speicher zuweisen, wie er benötigt • Problem: externe Fragmentatierung - im Hauptspeicher bilden sich mit der Zeit Löcher - Grund: Prozesse werden ausgelagert und können nicht immer durch gleich grosse Prozesse ersetzt werden
Was ist der Unterschied zwischen logischer und physikalischer Adresse?
Der Prozessore erzeugt logische Adressen → werden von Memory Managment Unit in physika- lische Adressen (zeigen auf real existierende Speicherpl ̈atze) abgebildet.
Aus welchen Gründen wollen mehrere Programme auf gleiche Speicherbereiche zugreifen?
Zusammenarbeit, Koordination
Was ist der Unterschied zwischen Page und Frame?
Logischer Adressraum wird in Pages aufgeteilt, physikalischer Adressraum wird in Frames aufgeteilt: Page und Frame sind gleich gross, Pages werden von MMU auf Frames abgebildet.
Was ist der Unterschied zwischen Page und Segment?
Ein Segment enth ̈alt einen logischen Programmbereich (Code, Daten bzw. Stack).
Erklären Sie den Unterschied zwischen einfachem Paging und Virtual Memory Paging.
Bei einfachem Paging steht der ganze Prozess im Hauptspeicher, bei Virtual Memory Paging werden nur die gerade benötigten Pages in den Speicher geladen → Prozess kann grösser sein als phys. Speicher zur Verfügung steht.
Was ist das Lokalitätsprinzip?
Wieso hat das Lokalitätsprinzip einen sehr grossen Einfluss auf das Virtual Memory Management?
- Es besagt, dass die Wahrscheinlichkeit sehr hoch ist, dass Daten, die gerade benutzt werden, auch in naher Zukunft wieder benötigt werden
- Wenn Pages nicht u ̈ber längere Zeit verwendet wu ̈rden, mu ̈ssten dauernd Pages in den phys. Speicher geladen werden → thrashing.
Welche Einträge finden sich typischerweise in einer Page Table?
Zuweisung Page → Frame, Zugriffsrechte, present, modified, etc.
Erklären und diskutieren Sie, um was es beim Translation Lookaside Buffer geht. Wie ist er typischerweise organisiert?
Der TLB ist ein Cache für Page Tabellen, typischerweise assoziativ organisiert.
Was ist der Unterschied zwischen Resident Set und Working Set?
Der Resident Set beinhaltet die Menge die Frames, die einem Prozess aktuell zugewiesen wurden, der Working Set ist die Menge der Frames, auf die der Prozess innerhalb eines Zeitfensters W gegegriffen hat.
Freier Speicherplatz kann auf verschiedene Arten verwaltet werden, z.B.:
1. mit einer Bitmap: 1 Bit pro Speicherblock, Speicherblockgro ̈sse n
2. mit einer Linked List: pro Knoten eine 32 Bit Speicher-Adresse, eine 16 Bit L ̈ange (L ̈ange des freien Speichers innerhalb eines Speicherblocks) und einem 16 Bit Zeiger auf den n ̈achsten Knoten in der Liste
Bestimmen Sie fu ̈r beide F ̈alle die notwendige Anzahl Bytes zur Verwaltung des Speichers, die Gro ̈sse des Speicher ist M. Welches Verfahren ist wann besser? Wie gross muss n gew ̈ahlt werden?
Fall 1: Anzahl Bytes A1 = M / n·8 (8 Bits pro Byte)
Fall 2: Anzahl Bytes A2 = M/2^16 · 8 (4 Bytes fu ̈r Adresse, 2 Bytes fu ̈r L ̈ange, 2 Bytes fu ̈r Zeiger
Bitmap ist besser wenn A1 < A2 ist, d.h. n > 2^10, sonst ist die Linked List besser.
Hinweis: eher unrealistisch, dass jeder 64KB Block aus einem belegten und einem freien Bereich besteht, n muss mit 64KB Bl ̈ocken < 64KB sein.
In einem System mit dynamischer Speicherallokation sind folgende Lo ̈cher vorhanden (in auf- steigender Reihenfolge der Adressen): 20KB, 9KB, 15KB, 4KB, 10KB, 9KB, 18KB, 12KB und 7KB.
Welche Lo ̈cher werden alloziert, wenn nacheinander Segmente der Gro ̈sse 9KB, 14KB und 9KB angefordert werden mit a) first-fit, b) next-fit und c) best-fit?
a): 20KB, 15KB, 9KB
b): 20KB, 15KB, 10KB
c): 9KB, 15KB, 9KB
Gegeben ist ein System mit mehreren gleichen physikalischen Segmenten der Gro ̈sse 220 Bytes und einer gesamten Speichergro ̈sse von 226 Bytes. Fu ̈r jeden geladenen Prozess unterh ̈alt das Betriebssystem eine Tabelle mit Zeigern auf die einzelnen Segmente. Aus wie vielen Bits muss dieser Zeiger im Minimum bestehen?
Ein 1MB Block wir fu ̈r ein Buddy System eingesetzt.
Zeichnen Sie Aufteilung des Speicher fu ̈r folgende Speicherallokationssequenz: Anforderung A: 70KB, Anforderung B: 35KB, Anforderung C: 80KB, Ru ̈ckgabe A, Anforderung D: 60KB, Ru ̈ckgabe B, Ru ̈ckgabe C, Ru ̈ckgabe D.
Zeichnen Sie den Bin ̈arbaum nachdem Block B zuru ̈ckgegeben wurde.
Gegeben ist ein einfaches Paging System mit folgenden Parametern: phsysikalischer Speicher
220 Bytes, Pagegro ̈sse 210 Bytes und 216 Pages im logischen Adressraum.
Aus wie vielen Bits besteht die logische Adresse?
Wie viele Bytes enth ̈alt ein Frame?
Wie viele Bits der physikalischen Adresse werden fu ̈r die Frameadresse beno ̈tigt?
Wie viele Eintr ̈age hat eine Page Tabelle?
Wie viele Bits werden im Minimum pro Tabelleneintrag beno ̈tigt? Nehmenen Sie an dass jeder Eintrag ein valid und ein modified Bit beno ̈tigt.
1. 26 Bits
2. 210 Bytes
3. 10 Bits
4. 216 Eintr ̈age
5. Frameadresse 10 Bit, 1 valid Bit, 1 modified Bit: 12 Bit.
In einem Virtual Memory System ist die virtuelle Adresse 32-Bit breit und die Pagegro ̈sse betr ̈agt 1KByte. Jeder Eintrag der Pagetabelle besteht aus 32 Bit. Die Gro ̈sse von Pagetabellen soll auf die Gro ̈sse einer Page beschr ̈ankt sein.
1. Wie viele Level von Pagetabellen werden beno ̈tigt?
2. Was ist die Gro ̈sse der Pagetabellen pro Level? Hinweis: eine Pagetabelle ist kleiner.
zu 1. 3 Level (Pagetabelle 10 Bit, jeder Level kann 1KB/4B = 256 Eintr ̈age ansprechen: die Aufteilung der virtuellen Adresse (32 Bit) ist demzufolge: 6 − 8 − 8 − 10 Bit.
zu 2. 256 resp. 64 Eintr ̈age oder 1KB resp. 256B.
Hinweis: Tabelleneintr ̈age der Gr ̈osse 32 Bit sind eher unrealistisch, wieso?
Übungen Aufgabe 7)
Siehe Blatt
...
Übungen: Aufgabe 8 siehe Blatt
...