Virtualiame režime kaip ir realiame taip pat naudojami segmentai ir postūmis. Tačiau čia segmento starto adresas paskaičiuojamas ne pridedant keturis nulius prie segmento registro turinio, bet gaunamas iš lentelių, kurias indeksuoja segmentų registrai.
Deskriptoriai - tai specialios esybės, atpažįstamos MMU apsaugotame režime. Automatiškai į deskriptorius kreipiamasi vykdant tarpsegmentines komandas JMP, CALL, INT ir pertraukčių aptarnavimo procedūras.
Uždavinių vykdymo tvarkai nustatyti naudojami selektorius (selector) ir aprašai (descriptor) uždavinių segmente procedūroms aprašyti. Operacinei sistemai skiriama 1 globalinė GDT (global descriptor table), o kiekvienam vartotojui - po lokalinę LDT (local descriptor table) deskriptorinę lentelę.
Kiekvienas uždavinys gali turėti tam tikrą sistemos pločio (systemwide) loginio adreso erdvę, kuri patalpinama į globalinę aprašymų lentelę ir loginę adresų erdvę, kuri patalpinama į vietinę aprašymų lentelę. Šiose lentelėse gali būti iki 8.192 aprašymų (desricptors) kiekvienoje. Kartu jos visos sudaro uždavinio loginio adreso erdvę
Priklausomai nuo informacijos deskriptoriuose, mikroprocesorius vykdo specialius veiksmus. Dirbant šiuo rėžimu, keičiasi segmentinių registrų funkcijos; jie tarnauja selektoriais deskretorinėms lentelėms išrinkti.
Paprastai deskriptorinės lentelės saugomos pagrindinėje atmintinėje, tačiau pagrindinėje atmintinėje esančių segmentų deskriptoriai saugomi priešatmintinėje. Dėl to žymiai padidėja kreiptis į juos sparta,
Kiekviena deskriptorinė ląstelė patalpinama į tris laukus: segmento ilgį, kreipties teisę ir adreso bazę. 80286 procesoriaus deskriptorinės lentelės formatas pateiktas 15.1 pav., 0 80836 – 15.2 pav.
Segmento ilgis
|
Kreipties teisė
|
Adreso bazė
| |
CS
| |||
DS
| |||
ES
| |||
SS
| |||
15 01
|
48 32
|
31 24
|
23 0
|
15.1 pav. Deskriptorinės lentelės formatas 80286 procesoriuje
Segmentiniai registrai
|
fizinis bazinis adresas
|
segmento riba
| ||||||||||
selektorius
|
CS
|
-
| ||||||||||
selektorius
|
SS
|
-
|
-
|
-
| ||||||||
selektorius
|
DS
|
-
|
-
|
-
| ||||||||
selektorius
|
ES
|
-
|
-
|
-
| ||||||||
selektorius
|
FS
|
-
|
-
|
-
| ||||||||
selektorius
|
GS
|
-
|
-
|
-
| ||||||||
15 0
|
36 0
|
15.2 pav. Deskriptorinės lentelės formatas 803286 procesoriuje
Selektorius tiek viename, tiek kitame procesoriuje tarnauja tik kaip konkretaus deskriptoriaus numeris(adresas).
Komentarų nėra:
Rašyti komentarą