Willkommen! Einloggen Ein neues Profil erzeugen

erweitert

Hinweis zu Übungsblatt 03

geschrieben von Stefan Disch 
Hinweis zu Übungsblatt 03
05.11.2010 11:47:19
Hallo,

ich habe soeben eine neue Version des Übungsblatt 03 hochgeladen.
In Aufgabe 4b) wurde folgender Hinweis hinzugefügt:
"(Adressen beginnen mit Adresse 0)"

Grüße
Stefan

Stefan Disch
Lehrstuhl für Betriebssysteme
Geb. 051 / Raum 02-031
Re: Hinweis zu Übungsblatt 03
06.11.2010 13:54:56
Hatte noch ein paar Fragen zu Aufgabe Nr. 2 aber ich glaube ich habe sie mir selbst beantwortet
Gibt es hier keine Lösch-Funktion für solche Fälle?



5 mal bearbeitet. Zuletzt am 06.11.2010 15:51 von J.Pressmar.
Re: Hinweis zu Übungsblatt 03
06.11.2010 17:10:56
Am besten wäre es natürlich, wenn du die Frage stehen lässt und einfach nur die Antwort ergänzen würdest. Könnte ja sein, dass jemand anderes die selbe Frage hat.
Re: Hinweis zu Übungsblatt 03
06.11.2010 19:15:52
Im Nachhinein durfte ich feststellen dass meine Fragen bei gesundem Menschenverstand nicht auftauchen werden ;)

Aber ich habe noch weitere Fragen mit denen ich dienen kann (und auf die ich noch keine Antwort gefunden habe):
Zu Aufgabe Nr. 4: Wie viele Bits groß ist der Offset für a) und b)?
Und wozu dient der Hinweis darauf dass die Adressen mit Adresse 0 beginnen? Ich glaube ich könnte Aufgabe b) lösen wenn dieser spezielle Zusatz nicht wäre. Muss ich ausrechnen wie viele zusammenhängende Zellen des Hauptspeichers im Cache denselben Platz verwenden? Selbst dann ist der Zusatz meiner Meinung nach nicht relevant. Habe ich die Aufgabe falsch verstanden?



1 mal bearbeitet. Zuletzt am 08.11.2010 07:34 von Stefan Disch.
Re: Hinweis zu Übungsblatt 03
08.11.2010 07:50:45
Hallo,

bitte niemals Lösungen zu einer Aufgabe posten! Sie war übrigens nicht korrekt.

Zu Aufgabe 4b):
Du hast einen Adressbus mit 64 bit und einen Hauptspeicher mit 16GB. Man hat also mehr Adressen als benötigt.
Der Hinweis "(Adressen beginnen mit Adresse 0)" soll klarstellen, wo die 16GB beginnen. Ansonsten könnte man argumentieren, dass die Speicherzellen willkürlich über den Adressraum verteilt sind.

Zur Frage wegen des "Offset":
Was meinst Du damit?
Es geht um einen Direct-Mapped-Cache, es werden die obersten 8 Bit zur Adressierung des Caches benutzt, also A[63, 56].

Grüße
Stefan

Stefan Disch
Lehrstuhl für Betriebssysteme
Geb. 051 / Raum 02-031
Re: Hinweis zu Übungsblatt 03
09.11.2010 09:03:44
Hier eine Grafik aus dem Internet wie ich mir das für die 4 a) vorgestellt habe:

[img585.imageshack.us]

Demnach ist die komplette Speicheraddresse in 3 Teile aufgeteilt: Den Tag, den Index (also die Cache-Adresse) und den Offset. Da nach dem Tag gefragt ist und sowohl der Index als auch die Gesamtlänge gegeben sind brauche ich doch noch die Länge des Offsets um den Tag zu bestimmen, oder etwa nicht? (Ich hätte ja gerne auf die Seite verwiesen auf der das alles noch mal ausführlicher steht aber der Link wird von diesem Forum blockiert. Auf jeden Fall habe ich diese Informationen bereits auf mehreren Webseiten zum Thema Direct Mapped Cache gefunden). Ob jetzt der Index oder der Tag an oberster Stelle steht ändert doch nichts am Offset oder?

Und zur 4 b): Wird der Hauptspeicher IMMER in Blöcke à 32 byte aufgeteilt? Also steht jede Speicheradresse des Caches immer für einen 32-byte-Block des Hauptspeichers? (Ich hatte angenommen dass dies frei wählbar ist)
Re: Hinweis zu Übungsblatt 03
09.11.2010 10:31:05
Wir betrachten einen Direct-Mapped-Cache wie er in der Vorlesung vorgestellt wurde.
Es gibt also keinen Offset. Die Übungsaufgaben beziehen sich, wenn nicht explizit in der Aufgabe erwähnt, immer auf die Vorlesung!

Zur 4b):
Man kann für die Aufgabe einfach einen 1 Byte Block annehmen. Größere Varianten wären auch möglich. Bitte in der Lösung explizit angeben.
Ein 32 Byte Block (256 Bit) wäre allerdings sehr groß.

Grüße
Stefan

Stefan Disch
Lehrstuhl für Betriebssysteme
Geb. 051 / Raum 02-031
Re: Hinweis zu Übungsblatt 03
09.11.2010 17:47:02
herzlichen Dank, ich glaube ich habe es jetzt verstanden.
Mein Problem bei Aufgabe 4b war es zu erkennen dass ein 64-bit-Bus "zu groß" ist für einen 16 GB Speicher, und dass somit nicht der komplette Bus verwendet wird zum Addressieren des Speichers. Des weiteren war mir die Umrechnung von Bit in Anzahl adressierbarer Zellen nicht bekannt



1 mal bearbeitet. Zuletzt am 09.11.2010 19:48 von J.Pressmar.
Sorry, Sie haben nicht die erforderliche Berechtigung, um in diesem Forum zu schreiben.