21
OS-Design / [solved] Deskriptor Confirm-Bit
« am: 06. October 2009, 16:32 »
Hallo leute,
ich bin grade dabei mir die Theorie anzueignen, und lese deswegen alles mögliche welches mit dem Thema os zutun hat (glaube manches sogar zu verstehen).
Meine Frage bezieht sich auf das Confirm-Bit welches im Code Deskriptor zu finden ist: http://www.fh-zwickau.de/doc/prmo/pmtutor/text/p_all3.htm
Laut: http://www.jay-code.de/
Zitat:
" Conforming Codesegment
Normalerweise ist es so, das ein Programm das eine Privilegstufe 3 (niedrigste) über ein sog. Call-Gate in ein Codesegment springen kann, das eigentlich nur für ein Programm der Privilegstufe 0 (höchste) gedacht ist. Sollte nun dieser Sprung erfolgen, so erhält das Programm für die Dauer, in der es sich in diesem Codesegment befindet um dort Code auszuführen, die Privilegstufe 0. In einem Conforming Codesegment ist das nicht so. Es ist zwar auch hier möglich durch ein Call-Gate in dieses Codesegment zu springen, jedoch wird das Program weiterhin mit der Privilegstufe 3 ausgeführt. Wozu das im einzelnen dienlich sein kann, kann ich im Moment noch nicht sagen ,weshalb ich dazu rate sich erst einmal mit den normalen Codesegmenten zu begnügen. " Zitat Ende.
Somit weiss ich ja schon mal wofür es da ist.
1. Weis jemand vielleicht wozu das dienlich sein kann bzw. wo man das nachlesen könnte?
2. Wenn das Programm zu einem Codesegment springt welches die Privilegstufe 0 hat, wer/was ist dann dafür zuständig dass das Programm vorübergehend eine andere Privilegstufe bekommt: Prozessor oder explizit der Kernel?
mfg ika
ich bin grade dabei mir die Theorie anzueignen, und lese deswegen alles mögliche welches mit dem Thema os zutun hat (glaube manches sogar zu verstehen).
Meine Frage bezieht sich auf das Confirm-Bit welches im Code Deskriptor zu finden ist: http://www.fh-zwickau.de/doc/prmo/pmtutor/text/p_all3.htm
Laut: http://www.jay-code.de/
Zitat:
" Conforming Codesegment
Normalerweise ist es so, das ein Programm das eine Privilegstufe 3 (niedrigste) über ein sog. Call-Gate in ein Codesegment springen kann, das eigentlich nur für ein Programm der Privilegstufe 0 (höchste) gedacht ist. Sollte nun dieser Sprung erfolgen, so erhält das Programm für die Dauer, in der es sich in diesem Codesegment befindet um dort Code auszuführen, die Privilegstufe 0. In einem Conforming Codesegment ist das nicht so. Es ist zwar auch hier möglich durch ein Call-Gate in dieses Codesegment zu springen, jedoch wird das Program weiterhin mit der Privilegstufe 3 ausgeführt. Wozu das im einzelnen dienlich sein kann, kann ich im Moment noch nicht sagen ,weshalb ich dazu rate sich erst einmal mit den normalen Codesegmenten zu begnügen. " Zitat Ende.
Somit weiss ich ja schon mal wofür es da ist.
1. Weis jemand vielleicht wozu das dienlich sein kann bzw. wo man das nachlesen könnte?
2. Wenn das Programm zu einem Codesegment springt welches die Privilegstufe 0 hat, wer/was ist dann dafür zuständig dass das Programm vorübergehend eine andere Privilegstufe bekommt: Prozessor oder explizit der Kernel?
mfg ika