next up previous
Next: Stronicowanie Up: Segmentacja Previous: Selektor

Algorytm tłumaczenia adresu logicznego na liniowy

Kiedy proces odwołuje się do pamięci z odpowiedniego rejestru segmentowego (CS, SS, DS, ED, FS, GS) pobierany jest selektor segmentu. Na jego podstawie odnajdowany jest odpowiadający mu deskryptor: Wartość w polu TI określa, określa tablicę, indeks jest indeksem w tej tablicy, a wartość RPL musi być mniejsza lub równa od numeru uprawnienia wskazywanego przez selektor (Wpp. generowane jest przerwanie wewnętrzne). Z deskryptora pobierany jest adres bazowy i dodawany do przesunięcia w ten sposób wyliczony zostasje adres liniowy.

Adres GDT jest przechowywany w specjalnym rejestrze procesora (GDTR). Adresy LDT są przechowywane jako deskryptory w tablicy GDT.

W celu zwiększenia wydajności deskryptory wskazywane przez rejestry segmentowe są przechowywane w specjalnych rejestrach procesora.



Wojciech Jaworski 2001-12-16