Stranišče vs segmentacija
Ostranjevanje je metoda upravljanja pomnilnika, ki jo uporabljajo operacijski sistemi. Ostranjevanje omogoča glavnemu pomnilniku uporabo podatkov, ki se nahajajo na sekundarni pomnilniški napravi. Ti podatki so shranjeni v sekundarni pomnilniški napravi kot bloki iste velikosti, imenovani strani. Paging omogoča, da operacijski sistem uporablja podatke, ki ne ustrezajo glavnemu pomnilniku. Segmentacija pomnilnika je metoda, ki zagotavlja zaščito pomnilnika. Vsak pomnilniški segment je povezan z določeno dolžino in naborom dovoljenj. Ko postopek poskuša dostopati do pomnilnika, se najprej preveri, ali ima zahtevano dovoljenje za dostop do določenega pomnilniškega segmenta.
Kaj je ostranjevanje?
Ostranjevanje je metoda upravljanja pomnilnika, ki jo uporabljajo operacijski sistemi. Ostranjevanje omogoča glavnemu pomnilniku uporabo podatkov, ki se nahajajo na sekundarni pomnilniški napravi. Ti podatki so shranjeni v sekundarni pomnilniški napravi kot bloki iste velikosti, imenovani strani. Paging omogoča, da operacijski sistem uporablja podatke, ki ne ustrezajo glavnemu pomnilniku. Ko program poskuša dostopati do strani, se najprej preveri tabela strani, da se ugotovi, ali je ta stran v glavnem pomnilniku. Tabela strani vsebuje podrobnosti o tem, kje so strani shranjene. Če ni v glavnem pomnilniku, se imenuje napaka strani. Operacijski sistem je odgovoren za ravnanje z napakami strani, ne da bi jih prikazal programu. Operacijski sistem najprej poišče, kje je ta stran shranjena v sekundarnem pomnilniku, nato pa jo pripelje v prazen okvir strani v glavnem pomnilniku. Nato posodobi tabelo strani, da označi, da so novi podatki v glavnem pomnilniku, in vrne nadzor nazaj v program, ki je prvotno zahteval stran.
Kaj je segmentacija?
Segmentacija pomnilnika je metoda, ki zagotavlja zaščito pomnilnika. Vsak segment pomnilnika je povezan z določeno dolžino in naborom dovoljenj. Ko poskuša postopek dostopati do pomnilnika, se najprej preveri, ali ima zahtevano dovoljenje za dostop do določenega pomnilniškega segmenta in ali je v dolžini, ki jo določi ta pomnilniški segment. Če kateri od teh pogojev ni izpolnjen, se sproži izjema strojne opreme. Poleg tega ima lahko segment tudi zastavico, ki označuje, ali je segment v glavnem pomnilniku ali ne. Če segment ne prebiva v glavnem pomnilniku, se sproži izjema in operacijski sistem prenese segment iz sekundarnega pomnilnika v glavni pomnilnik.
Kakšna je razlika med pozivanjem in segmentacijo?
Pri ostranjevanju je pomnilnik razdeljen na segmente enake velikosti, imenovane strani, segmenti pomnilnika pa se lahko razlikujejo (zato je vsak segment povezan z atributom dolžine). Velikosti segmentov se določijo glede na naslovni prostor, ki ga zahteva postopek, medtem ko je naslovni prostor postopka razdeljen na strani enake velikosti v ostranjevanju. Segmentacija zagotavlja varnost, povezano s segmenti, medtem ko ostranjevanje ne zagotavlja takega mehanizma.