logo

Ostranjevanje v OS (operacijski sistem)

V operacijskih sistemih je ostranjevanje mehanizem za shranjevanje, ki se uporablja za pridobivanje procesov iz sekundarnega pomnilnika v glavni pomnilnik v obliki strani.

Glavna ideja stranjenja je razdeliti vsak proces v obliki strani. Tudi glavni pomnilnik bo razdeljen v obliki okvirjev.

režiser Karan Johar

Ena stran procesa se shrani v enega od okvirjev pomnilnika. Strani so lahko shranjene na različnih lokacijah pomnilnika, vendar je prednostna naloga vedno najti sosednje okvirje ali luknje.

Strani postopka se prenesejo v glavni pomnilnik le, ko so potrebne, sicer se nahajajo v sekundarnem pomnilniku.

Različni operacijski sistemi določajo različne velikosti okvirja. Velikosti vsakega okvirja morajo biti enake. Glede na dejstvo, da so strani preslikane v okvirje v Paging, mora biti velikost strani enaka velikosti okvirja.


Ostranjevanje OS

Primer

Vzemimo velikost glavnega pomnilnika 16 Kb in velikost okvirja 1 KB, zato bo glavni pomnilnik razdeljen na zbirko 16 okvirjev po 1 KB.

funkcije java 8

V sistemu so 4 procesi, in sicer P1, P2, P3 in P4 po 4 KB. Vsak proces je razdeljen na strani po 1 KB, tako da se lahko ena stran shrani v en okvir.

Na začetku so vsi okvirji prazni, zato bodo strani procesov shranjene na neprekinjen način.

Okvirji, strani in preslikava med njima je prikazana na spodnji sliki.


Primer strani OS

Vzemimo, da se P2 in P4 po določenem času premakneta v stanje čakanja. Zdaj postane 8 okvirjev praznih in zato se na to prazno mesto lahko naložijo druge strani. Proces P5 velikosti 8 KB (8 strani) čaka v čakalni vrsti pripravljenosti.

Glede na dejstvo, da imamo v pomnilniku na voljo 8 nesosednjih okvirjev in ostranjevanje zagotavlja fleksibilnost shranjevanja procesa na različnih mestih. Zato lahko naložimo strani procesa P5 namesto P2 in P4.


Primer ostranjevanja OS 2

Enota za upravljanje pomnilnika

Namen enote za upravljanje pomnilnika (MMU) je pretvoriti logični naslov v fizični naslov. Logični naslov je naslov, ki ga generira CPE za vsako stran, medtem ko je fizični naslov dejanski naslov okvirja, kjer bo vsaka stran shranjena.

pretvori niz v objekt json

Ko naj CPE dostopa do strani z uporabo logičnega naslova, mora operacijski sistem pridobiti fizični naslov za fizični dostop do te strani.

Logični naslov ima dva dela.

kako ustvariti naključno število v Javi
  1. Številka strani
  2. Odmik

Enota za upravljanje pomnilnika OS mora pretvoriti številko strani v številko okvirja.

Primer

Če upoštevamo zgornjo sliko, recimo, da CPE zahteva 10. besedo 4. strani procesa P3. Ker se stran številka 4 procesa P1 shrani na okvir številka 9, bo 10. beseda 9. okvira vrnjena kot fizični naslov.