da das Paging bei der zweiten und dritten Online Veranstaltung (verstärkt) dran gekommen ist, gehe ich stark davon aus, dass das Thema auch in dieser Form in der Klausur dran kommt. Ich fasse mal die wichtigsten Punkte hier zusammen, dann haben auch die Leute etwas davon, die nicht bei der Online-Veranstaltung teilnehmen können.
Hier ist erst mal das Krikel-Krakel (sorry 🙂 ) von Herrn Coltzau:
Also, so eine Aufgabe könnte wie folgt aussehen:
Ein Paging-System hat einen maximalen logischen Speicher der Größe 16 GByte. Die Seitengröße beträgt 4 KByte und der maximale physische Speicher ist 4 GByte groß. Ein Abschnitt der Seitentabelle eines aktiven Prozesses hat die folgenden Einträge:
An dieser Stelle gibt es keine Seitennummer. Diese braucht man aber auch nicht explizit anzugeben, da diese immer von oben nach unten mit 0 beginnend nummeriert werden. Um es einfacher zu machen, kann man sich diese selbst daneben schreiben:
1.) Erste Frage:
Wie groß ist eine logische Adresse? oder auch
Wie viele Bit hat eine logische Adresse?
Der logische Speicher kann maximal 16 GB groß sein, das heißt:
[tex]16 GB = 16 * 2^{10} * 2^{10} * 2^{10} = 2^4 * 2 ^{30} = 2^{34}[/tex]
Also hat eine Adresse 34 Bit.
2.) Zweite Frage:
Wie groß ist ein Eintrag in der Seitentabelle? oder auch
Wie viele Bit hat ein Eintrag in der Seitentabelle?
Die Größe der Seitentabelle, also die Anzahl der Seitenrahmen, hängt von der Größe des physikalischen Speichers ab. Der physikalische Speicher wird in gleich große Rahmen (Seitenrahmen) aufgeteilt. In unserem Beispiel wird der 4 GB große physikalische Speicher in 4 KB Seitenrahmen aufgeteilt. Die Frage ist also, wie viele 4 KB Seitenrahmen passen in den 4 GB Speicher?
[tex]\frac{4 GB}{4 KB} = \frac{2^2 * 2^{30}}{2^2 * 2^{10}} = 2^{20}[/tex]
Der 4 GB Speicher wird in [tex]2^{20}[/tex] Seitenrahmen a 4 KB aufgeteilt. Der Eintrag in der Seitentabelle hat 20 Bit.
3.) Dritte Frage:
Welche physische Adresse hat die logische Adresse 4097?
Zum Verständnis: Die Seitennummern sind wie oben angegeben durchnummeriert. Da die Seitengröße 4KB, also 4096 Byte beträgt, sind so auch die logischen Adressen durchnummeriert:
Die Adresse 4097 liegt offensichtlich in der Seite mit der Nummer 1, die Seitenrahmennummer der ersten Seite ist 2. Jetzt fehlt aber noch das Offset, innerhalb der Seite wird weiter unterteilt:
Beim Suchen der phyischen oder logischen Adresse wird immer durch die Seitengröße mit Rest geteilt. Die logische Adresse ist 4097, die Seitengröße 4096.
[tex]\frac{4097}{4096} = 1 Rest 1[/tex]
Die 1 vor dem Rest bedeutet, dass die Adresse in der Seite mit der Nummer 1 (wie oben festgestellt) liegt. Die 1 hinter dem Rest ist das Offset. Diese wird für die weitere Adressierung verwendet: Da die Seitenrahmennummer der ersten Seite 2 ist, wird 2 mit der Seitengröße multipliziert und danach noch das Offset addiert.
[tex]2 * 4096 + 1 = 8193[/tex]
Die logische Adresse 4097 wird demnach auf die physische Adresse 8193 abgebildet.
Wem das noch zu kryptisch ist, der kann auch noch (für das Verständnis) auf der rechten Seiten den Adressraum hinzufügen:
Daran erkennt man, dass eine logische Adresse zwischen 4096 und 8191 auf eine physische Adresse zwischen 8192 und 12287 abgebildet wird. Um die genaue physische Adresse zu erfahren, wird das Offset verwendet.
4.) Vierte Frage:
Welche logische Adresse wird auf die physische Adresse 10020 abgebildet?
Die physische Adresse wird durch die Seitengröße dividiert:
[tex]\frac{10020}{4096} = 2 Rest 1828[/tex]
Die physische Adresse 10020 liegt im Seitenrahmen mit der Nummer 2 und Offset 1828. Da die logische Seite 1 auf Seitenrahmen 2 abgebildet wird, wird 1 mit der Seitengröße multipliziert und das Offset dazu addiert:
[tex]1 * 4096 + 1828 = 5924[/tex]
Die physische Adresse 10020 wird demnach auf die logische Adresse 5924 abgebildet.
5.) Fünfte Frage:
Welche logische Adresse wird auf die physische Adresse 12288 abgebildet?
Die physische Adresse wird durch die Seitengröße dividiert:
[tex]\frac{12288}{4096} = 3 Rest 0[/tex]
Die physische Adresse 12288 liegt im Seitenrahmen mit der Nummer 3 und Offset 0.
Ein Blick in die Seitentabelle der Aufgabenstellung lässt erkennen, dass dieser Eintrag nicht vorhanden ist. Als Antwort:
Seitenrahmennummer 3 wurde noch nicht in die Seitentabelle eingelagert.
Das war's.
Hoffentlich ist es Einigen eine Hilfe 😉
LG,
Mo
P.S.: Wenn jemand einen Fehler sieht, bitte Bescheid sagen, dann kann ich das korrigieren.
Hier ist erst mal das Krikel-Krakel (sorry 🙂 ) von Herrn Coltzau:

Also, so eine Aufgabe könnte wie folgt aussehen:
Ein Paging-System hat einen maximalen logischen Speicher der Größe 16 GByte. Die Seitengröße beträgt 4 KByte und der maximale physische Speicher ist 4 GByte groß. Ein Abschnitt der Seitentabelle eines aktiven Prozesses hat die folgenden Einträge:

An dieser Stelle gibt es keine Seitennummer. Diese braucht man aber auch nicht explizit anzugeben, da diese immer von oben nach unten mit 0 beginnend nummeriert werden. Um es einfacher zu machen, kann man sich diese selbst daneben schreiben:

1.) Erste Frage:
Wie groß ist eine logische Adresse? oder auch
Wie viele Bit hat eine logische Adresse?
Der logische Speicher kann maximal 16 GB groß sein, das heißt:
[tex]16 GB = 16 * 2^{10} * 2^{10} * 2^{10} = 2^4 * 2 ^{30} = 2^{34}[/tex]
Also hat eine Adresse 34 Bit.
2.) Zweite Frage:
Wie groß ist ein Eintrag in der Seitentabelle? oder auch
Wie viele Bit hat ein Eintrag in der Seitentabelle?
Die Größe der Seitentabelle, also die Anzahl der Seitenrahmen, hängt von der Größe des physikalischen Speichers ab. Der physikalische Speicher wird in gleich große Rahmen (Seitenrahmen) aufgeteilt. In unserem Beispiel wird der 4 GB große physikalische Speicher in 4 KB Seitenrahmen aufgeteilt. Die Frage ist also, wie viele 4 KB Seitenrahmen passen in den 4 GB Speicher?
[tex]\frac{4 GB}{4 KB} = \frac{2^2 * 2^{30}}{2^2 * 2^{10}} = 2^{20}[/tex]
Der 4 GB Speicher wird in [tex]2^{20}[/tex] Seitenrahmen a 4 KB aufgeteilt. Der Eintrag in der Seitentabelle hat 20 Bit.
3.) Dritte Frage:
Welche physische Adresse hat die logische Adresse 4097?
Zum Verständnis: Die Seitennummern sind wie oben angegeben durchnummeriert. Da die Seitengröße 4KB, also 4096 Byte beträgt, sind so auch die logischen Adressen durchnummeriert:

Die Adresse 4097 liegt offensichtlich in der Seite mit der Nummer 1, die Seitenrahmennummer der ersten Seite ist 2. Jetzt fehlt aber noch das Offset, innerhalb der Seite wird weiter unterteilt:
Beim Suchen der phyischen oder logischen Adresse wird immer durch die Seitengröße mit Rest geteilt. Die logische Adresse ist 4097, die Seitengröße 4096.
[tex]\frac{4097}{4096} = 1 Rest 1[/tex]
Die 1 vor dem Rest bedeutet, dass die Adresse in der Seite mit der Nummer 1 (wie oben festgestellt) liegt. Die 1 hinter dem Rest ist das Offset. Diese wird für die weitere Adressierung verwendet: Da die Seitenrahmennummer der ersten Seite 2 ist, wird 2 mit der Seitengröße multipliziert und danach noch das Offset addiert.
[tex]2 * 4096 + 1 = 8193[/tex]
Die logische Adresse 4097 wird demnach auf die physische Adresse 8193 abgebildet.
Wem das noch zu kryptisch ist, der kann auch noch (für das Verständnis) auf der rechten Seiten den Adressraum hinzufügen:

Daran erkennt man, dass eine logische Adresse zwischen 4096 und 8191 auf eine physische Adresse zwischen 8192 und 12287 abgebildet wird. Um die genaue physische Adresse zu erfahren, wird das Offset verwendet.
4.) Vierte Frage:
Welche logische Adresse wird auf die physische Adresse 10020 abgebildet?
Die physische Adresse wird durch die Seitengröße dividiert:
[tex]\frac{10020}{4096} = 2 Rest 1828[/tex]
Die physische Adresse 10020 liegt im Seitenrahmen mit der Nummer 2 und Offset 1828. Da die logische Seite 1 auf Seitenrahmen 2 abgebildet wird, wird 1 mit der Seitengröße multipliziert und das Offset dazu addiert:
[tex]1 * 4096 + 1828 = 5924[/tex]
Die physische Adresse 10020 wird demnach auf die logische Adresse 5924 abgebildet.
5.) Fünfte Frage:
Welche logische Adresse wird auf die physische Adresse 12288 abgebildet?
Die physische Adresse wird durch die Seitengröße dividiert:
[tex]\frac{12288}{4096} = 3 Rest 0[/tex]
Die physische Adresse 12288 liegt im Seitenrahmen mit der Nummer 3 und Offset 0.
Ein Blick in die Seitentabelle der Aufgabenstellung lässt erkennen, dass dieser Eintrag nicht vorhanden ist. Als Antwort:
Seitenrahmennummer 3 wurde noch nicht in die Seitentabelle eingelagert.
Das war's.
Hoffentlich ist es Einigen eine Hilfe 😉
LG,
Mo
P.S.: Wenn jemand einen Fehler sieht, bitte Bescheid sagen, dann kann ich das korrigieren.