Autor Thema: Fragen zum Protected-Mode  (Gelesen 4046 mal)

nooooooooos

  • Beiträge: 734
    • Profil anzeigen
Gespeichert
« am: 25. October 2005, 20:53 »
Das hier sind meine Fragen:

1.)   Wie definiert man im PM einen Stack ?
2.)   Und um wieviel muss ich den Selektor erhöhen, wenn ich den nächst höheren Deskriptor verwenden möchte ?

Homix

  • Beiträge: 138
    • Profil anzeigen
Gespeichert
« Antwort #1 am: 25. October 2005, 21:13 »
hi,
zu 1.)
fast so wie im RealMode: in SS den Selektor speichern, der auf das Stacksegment (oder das Datensegment) im Deskriptor zeigt und in ESP die Offset-Adresse des Stacks speichern

zu 2.)
immer um 8 !
Null-Deskriptor = 0,
1. Deskriptor = 8,
...

mfg,
stefan2005

Roshl

  • Beiträge: 1 128
    • Profil anzeigen
    • http://www.lowlevel.net.tc
Gespeichert
« Antwort #2 am: 26. October 2005, 17:15 »
immer um 8 erhöhen ist nicht ganz korrekt, das würde nur stimmen, wenn alle den selben Level besitzen.
man kann es ja einfach so machen: einfach deskriptor nummer nehmen, 3 bit nach links shiften und dann entsprechend die 3 niederen bits setzen
[schild=1]Wieder ein wertvoller(?) Beitrag von Roshl[/schild]

ena

  • Beiträge: 14
    • Profil anzeigen
Gespeichert
« Antwort #3 am: 15. November 2005, 11:15 »
Aufbau Selektor:
-------------------
|15..................|3 |2.0|
|   SELEKTOR   |TI|CPL|

Wenn du nun zb. den ersten Deskriptor haben willst sieht die bitkombi fuer deinen selektor so aus: 0000000000001
Dazu kommt dann noch das TI-Bit und das Current-Priveleg-Level und damit siehts dann zb so aus: 0000000000001000
Wie du siehst ergibt sich hieraus dezimal sowie hexadezimal die acht. Ist etwas verwirrend da die deskriptoren meist acht byte lang sind.

nooooooooos

  • Beiträge: 734
    • Profil anzeigen
Gespeichert
« Antwort #4 am: 15. November 2005, 17:11 »
Danke vielmals.

Gruss
Noooooooooos

 

Einloggen