2013 m. sausio 10 d., ketvirtadienis

10.3. Puslapiavimas



Programos segmentai gali skirtis savo ilgiu. Taikant puslapiavimą, programa yra sudaloma į fiksuoto ilgio puslapius. Puslapio dydis paprastai yra nedidelis ir yra parenkamas siekiant efektyvumo techninės įrangos atžvilgiu.
Kaip ir segmentų atveju, programos puslapiai nėra talpinami į vientisą atmintį, jie išmėtomi į laisvas atminties sritis. Tokiu atveju adresas yra sudaromas iš dviejų dedamųjų (10.4 pav.), puslapio numerio (adreso vyresnėse bitų skiltyse) bei poslinkio (nurodomo adreso jaunesnėse bitų skiltyse).

Adresų dinaminė transliacija yra atliekama programos vykdymo metu. Instrukcijos vykdymo metu, bazinis adresas bei poslinkis yra paverčiami absoliučiu adresu techninės įrangos priemonėmis. Puslapio bazinis adresas yra gaunamas iš programos puslapių lentelės (kaip kad segmento adresas – iš segmentų lentelės), šią lentelę tvarko operacinė sistema. Puslapio adresas sumuojasi su poslinkio reikšme ir tuo būdu yra nustatomas absoliutus adresas.

Komentarų nėra:

Rašyti komentarą

Tinklaraščio archyvas

Etiketės