Virtuelle Speicherverwaltung?
Hallo, mein Problem lautet wie folgt:
Ein Rechner besitze einen 4 Seiten à 100 Speicherplätze großen physikalischen Speicher. Der virtuelle Speicher umfasse 12 Seiten und werde auf die Blöcke 50, ... , 61 der Festplatte abgebildet.
Ich soll nun bestimmte virtuelle Speicheradressen in physikalische Adressen umwandeln. Kann mir jemand zeigen, wie ich die virtuelle Adresse von z.B. 322 umwandle?
Danke
1 Antwort
![](https://images.gutefrage.net/media/default/user/5_nmmslarge.png?v=1438863662000)
4 Seiten physikalischen Speicher hast du.
Du hast 12 virtuelle Seiten, heißt, je 3 Seiten müssen auf denselben Speicherblock mappen (wie das gemacht wird hängt von der Mapping-Strategie ab).
Da ihr offenbar nicht binär rechnet (sonst wären die Größe des Speicherblocks recht ungünstug und die Adresse komisch) würde ich sagen, dass beispielsweise folgendes Mapping funktionieren sollte:
Virtuelle Seite = Virtuelle Adresse / 100;
Offset = Virtuelle Adresse % 100;
Physikalische Seite = Virtuelle Seite % 4;
Physikalische Adresse = Physikalische Seite * 100 + Offset;
Für die Adresse 322 wäre das dann folgendes:
Virtuelle Seite = 3;
Offset = 22;
Physikalische Seite = 3;
Physikaliche Adresse = 322;
Aber je nachdem, wie die Aufgabenstellung zu verstehen ist (das ist nicht wirklich klar) kann natürlich auch etwas anderes gefragt sein.
Hey, ich hab tatsächlich einen Teil der Aufgabe vergessen dazuzuschreiben. Der war in der pdf auf der nächsten Seite🙃
Jedenfalls soll die Kachel erst bei 0, dann 1, ... bis die voll ist, und dann nach last recently used Methode neu gefüllt werden.
LG