Zusätzliches Übungsblatt
16.03.2009 15:50:48
Hallo,

zur Vorbereitung auf die Klausur, habe ich noch ein Übungsblatt erstellt, welches
den Stoff nach Übungsblatt 12 behandelt.
Dies ist absolut freiwillig. Es findet keine Korrektur statt.
Sollten Fragen auftauchen, dann benutzt bitte das Forum.

Das Übungsblatt findet Ihr auf der Vorlesungsseite unter "Vorlesungsmaterial".


Ich wünsche Euch viel Erfolg in der Klausur
Stefan

Stefan Disch
Lehrstuhl für Betriebssysteme
Geb. 051 / Raum 02-031



1 mal bearbeitet. Zuletzt am 16.03.2009 15:51 von Stefan Disch.
Re: Zusätzliches Übungsblatt
17.03.2009 12:37:40
Hallo,

Ich habe zu dem Zusatzblatt eine Frage. Bei der Aufgabe 1a ist der Prozess C noch nicht geladen. Aber nach dem Prozess B wurde der Prozess C ausgelagert. Ist das möglich?

Danke
Re: Zusätzliches Übungsblatt
17.03.2009 12:51:08
Ich verstehe die Frage nicht so ganz, aber ich versuch's mal:
Nehmen wir an, alle drei Prozesse seine ausgelagert. Jetzt werden zunächst A, dann B
eingelagert.
Ich hoffe, das ich helfen konnte. Wenn nicht, dann präzisiere die Frage etwas.

Grüße
Stefan

Stefan Disch
Lehrstuhl für Betriebssysteme
Geb. 051 / Raum 02-031
Re: Zusätzliches Übungsblatt
19.03.2009 12:09:22
Zur Aufgabe 2:
Ich verstehe nicht wie wir die Gleichungen aufschreiben sollen, da wir ja mit z nur w eingegränzt haben und a ja ohnehin ein Paar ist, das schon p,w enthält. Wie soll ich also p bzw. w als Funktion von a,z darstellen?? w ist ja beliebig, und kann so ja nicht durch eine Gleichung ausgedrückt werden in Abhängigkeit von a,z. Da a ja auch beliebig ist???

Bräuchten wir dann nicht noch ne Seitentabelle eines Prozesses??

Oder sollen wir die absolute Adresse berechnen??



1 mal bearbeitet. Zuletzt am 19.03.2009 12:10 von nomisge.
Re: Zusätzliches Übungsblatt
19.03.2009 12:43:10
Man kann a aber auch als Zahl interpretieren. Nehmen wir an, a und z seien (als Zahl) gegeben. Wie kann man nun die Werte von p und w ausrechnen (die Zahl, nicht einen fixen Bitvektor)?

Grüße
Stefan

Stefan Disch
Lehrstuhl für Betriebssysteme
Geb. 051 / Raum 02-031
Re: Zusätzliches Übungsblatt
20.03.2009 10:10:12
Ok da, ich ja dann sozusagen weis um wieviel Bit die Seitennummer verschoben ist (bzw als Zahl 2^BitsOffset = z), bzw den Offset also w ausrechnen kann, weis ich trotzdem nicht wie ich eine zweite Gleichung aufstellen kann. Da ich ja eine zweite Eigenschaft benutzen muss, auf die ich aber nicht komme (Sonst wären alle anderen Gleichungen ja nur Umformungen).
Bisher benutzt habe ich: Seitennummer*Rahmenlänge+Offset=Virtuelle Adresse.

Gibt es denn noch weitere Informationen, Eigenschaften die wir benutzen können?
Re: Zusätzliches Übungsblatt
20.03.2009 11:07:00
Ich poste mal die Lösung:

Es sind alle Informationen vorhanden, die man benötigt.
Es gilt: p * 2^z + w = a
Wie kann man nun bei geg. a und z die Werte von p und w bestimmen?

Es gilt natürlich auch: w <= 2^z

Deshalb gilt nun: p = abrunden( a / 2^z )
da sich w nur im Nachkommabereich bemerkbar macht.
Dies entspricht einem Rechtsshift um z Stellen (vgl. TI).

Nun kann man damit auch w bestimmen:
w = a - p * 2^z
(Umformung der ersten Gleichung)


Grüße
Stefan

Stefan Disch
Lehrstuhl für Betriebssysteme
Geb. 051 / Raum 02-031
dw
Re: Zusätzliches Übungsblatt
22.03.2009 18:22:40
z ist in der Aufgabe als "Anzahl der Bytes einer Seite" angegeben.

Versteh ich hier was falsch oder müsste es mit dieser Lösung nicht eher die "Anzahl der Bits sein, um alle Bytes einer Seite zu adressieren" (oder eben z' = log2(z))?

Wäre diese Lösung falsch?
p = a >> log2(z);
w = a & (z-1);
Re: Zusätzliches Übungsblatt
23.03.2009 09:34:36
Ja, das habe ich oben vergessen. log2(z) ergibt die Länge des Bitvektors, d.h. man muss
oben z durch log2(z) ersetzen.

Zur vorgeschlagenen Lösung:
p = a >> log2(z);
w = a & (z-1);

Das ist leider keine algebraische Gleichung, sondern Pseudocode.

Grüße
Stefan

Stefan Disch
Lehrstuhl für Betriebssysteme
Geb. 051 / Raum 02-031