Ich weiß nicht, was "es wird byteweise adressiert" bedeutet. Weiß das wer von euch?
Ich weiß nicht, was "es wird byteweise adressiert" bedeutet. Weiß das wer von euch?
Nur die Wahrheit.
Dass du Bytes adressierst, nicht Bits.
Wenn du zum Beispiel 10 Bit Offset hast, sind das 1024 Adressen innerhalb einer Page, und jede dieser Adressen entspricht einem Byte -> daher 1024 Byte Pagegröße
Soll man da jetzt das gleiche wie auf den Folien machen nur hat man weniger Stellen zur Verfügung im Offset und Page? oder ist da doch irgendein Gag dahinter versteckt?
Ich habe das Beispiel mal so ähnlich wie das Beispiel vom UE7 gemacht. 32 Bit virtuelle Adresse, 1KB Page-Größe und 25% von der virtuellen Adresse ist tatsächlich physisch verbaut.
Nur, was bedeutet "Die Page-Table ist dynamisch implementiert. Es verursachen somit nur verwendete Pages einen Eintrag in der Page-Table. "
Heißt das, dass man nirgendwo ein Present-Bit "0" haben soll?
Nur die Wahrheit.
mhh....
also ich versteh das mit dem dynamisch so, dass es kein "present bit" gibt.
sondern wenn es einen eintrag in der pagetable für eine page gibt dann hat es automatisch ein frame. dh es gibt keine pagenummer die auf ein leeres oder ungültiges frame deutet.
does this make sense ?
"He's dead, Jim."
Dr. Leonard "Bones" McCoy, Star Trek
was habt ihr für c?
2 Bit Adresslänge für die virt. Adressen?
hmmm...ein Speicher liefert doch immer irgendeinen Wert, sei es ein Default-Wert (0) oder ein "unbekannter Wert" von vorhergehenden Schreibvorgängen. Das present-Bit weglassen würde meiner Meinung nach also nur gehen, wenn man für den FrameNr-Wert einen Sonderwert für "nicht vorhanden" reserviert. Da so etwas nirgends besprochen wurde, kommt mir das aber eher nicht nach der gesuchten Lösung vor, ich würde den Satz also einfach ignorieren^^
mhh... mhh...
ok ich glaub ich hab's jetzt verstanden.
der punkt a)4 heißt nur, dass NICHT für JEDE page ein eintrag in der talbe sein muss (laut foliensatz 21 folie 19, 21 muss das so sein) sondern nur für die, die auch wirklich verwendet werden.
dh. wenn ich insgesamt 10 möglich pages hab aber nur 3 davon verwende, hat die table nur 3 einträge (mit present bit = 1).
und für c) hätt ich mir 1 bit gedacht.
wenn ich 2 pages mit jeweils 1 Byte hab
und im physischen speicher nur 1 Frame mit 1 Byte zur verfügung steht (laut angabe muss physischer speicher ja weniger sein als die pages)
dann werden doch die 2 pages automatisch auf dieses eine frame geleitet oder ? und da ich ja Byte statt KByte verwende und laut angabe byteweise adressiert werden soll reicht doch das eine bit....oder versteh ich da was falsch ?![]()
Last edited by steppenhahn; 10-06-2012 at 16:25. Reason: habs mir anders überlegt...
"He's dead, Jim."
Dr. Leonard "Bones" McCoy, Star Trek
Unter b) ist gefragt, dass man 4 virtuelle Adressen angeben soll. Ist das möglicherweise ein Hinweis darauf, dass der virtuelle Speicher mindestens 4 Pages haben muss? Mit einem Speicher von 2 Pages und nur einem Byte in der Page wird man sich mit 4 Adressen schwer tun? Oder ist c) unabhängig von den anderen Punkten?
b) bezieht sich auf ein frei gewähltes system, das den anforderungen in a) etnspricht
c) bezieht sich auf ein minimales system, das den anforderungen in a) entspricht.
dh. b) & c) beschreiben 2 verschiedene systeme.
"He's dead, Jim."
Dr. Leonard "Bones" McCoy, Star Trek
also laut der Aussage im Tuwel kann man doch eigentlich a) & b) verknüpfen, wenn ich in a) davon ausgehe, dass nur 4 Pages verwendet wurden, oder?!
Ich versteh irgendwie nicht wie man die dynamische Page-Table "zeichnen" soll. Mit Beispielwerten füllen?
Wie soll ich die page-table aufzeichnen,wenn mein virtueller adressraum ist 8K und physikalischer adressraum 4K und eine page ist 1K groß(1024 Bytes). Dann ist meine virtuelle adresse 13 bits und physikalische 13 bits.Kann ich mir sagen,dass meine page-table wird 4 zeilen haben und in jeder zeile sind zb. 2 bits gespeichert (das hab ich mir selbst gewählt)wie werde ich dann die einzelne zeile ansprechen,wenn meine page-table keine fixe große hat? danke
![]()
kann hier bitte jemand die lösung hochladen? Das wäre für mich und wahrscheinlich auch für die andere seehr hilfreich.
danke!
wow super perfekt! Vielen dank!![]()
mhh versteh deine frage(n) nicht ganz.
die virtuelle adresslänge in punkt a) ergibt sich daraus, dass ich 1024 byte pagegröße wähle (= 2 hoch 10)
und wähle dass es 7 pages à 1024 byte gibt. um diese 7 pages eindeutig zu adressieren brauch ich 3 bit (000 bis 110)
--> 10 + 3 = 13 bit
ad c)
in c) muss es mehr pages geben als speicher verbaut ist.
dh. minimalistisch gesehen hab ich 1 frame dass eine größe von 1 byte hat (1 byte, weil in der angabe steht, dass das die kleinste adressierbare einheit ist).
pages müssen mehr sein als frames, darum wähle ich 2 pages (diese müssen wegen dem frame auch 1 byte groß sein).
um diese 2 pages eindeutig zu identifizieren brauch ich 1 bit. (page 0, page 1)
dh. hier ist eine virtuelle adresse aus nur einem bit genug, da sowieso nur ein frame zur verfügung steht, in das geschrieben wird/werden kann.
(in diesem fall hab ich einen offset von 0.)
"He's dead, Jim."
Dr. Leonard "Bones" McCoy, Star Trek
Ok das mit dem Offset versteh ich, dass das 10 Bit ist, aber wie kommst du auf die 7 Pages? Wählst du die einfach willkürlich? Dann versteh ich das mit den 3 Bit auch.
"The only way to get rid of a temptation is to yield to it."
- Oscar Wilde
komisch..bei uns in der übung wurde gesagt dass minimal 2 bit notwendig sind. 1 für pages und 1 für offset..
Ist die Pagetable nicht unvollständig? Denn es gibt ja 2 Pages, 0 und 1. Da es nur einen Frame gibt, müsste doch in der Pagetable stehen:
page# frame# 0 0 1 0
?
ich hab für c) mitgeschrieben:
* pagegröße 1 byte
* 1 byte phys.speicher, 2 byte virt.speicher
* daraus ergibt sich offset 0 bit, framenr. 0 bit, pagenr. 1 bit (1 bit virt.adr. ; 0 bit phys.adr.)
pagetable:
pagenr . | present bit
0 | 0/1
1 | 0/1
kous kous - the food so nice they named it twice
ja genau. die 7 pages hab ganz willkürlich gewählt.
"He's dead, Jim."
Dr. Leonard "Bones" McCoy, Star Trek
Kann man die Einträge per b) auch willkürlich wählen? Also in welchen Frame die Page geladen wird?
"The only way to get rid of a temptation is to yield to it."
- Oscar Wilde
Bookmarks