Kaj je enota za upravljanje pomnilnika?

Računalniška strojna oprema, ki je odgovorna za upravljanje pomnilniškega sistema računalnika, se imenuje enota za upravljanje pomnilnika (MMU). Ta komponenta služi kot medpomnilnik med CPE in sistemskim pomnilnikom. Funkcije, ki jih izvaja enota za upravljanje pomnilnika, lahko običajno razdelimo na tri področja: upravljanje pomnilnika strojne opreme, upravljanje pomnilnika operacijskega sistema in upravljanje pomnilnika aplikacij. Čeprav je enota za upravljanje pomnilnika lahko ločena komponenta čipa, je običajno integrirana v centralno procesno enoto (CPU).

Na splošno strojna oprema, povezana z upravljanjem pomnilnika, vključuje pomnilnik z naključnim dostopom (RAM) in pomnilniške predpomnilnike. RAM je fizični prostor za shranjevanje, ki se nahaja na trdem disku. To je glavni prostor za shranjevanje v računalniku, kjer se berejo in zapisujejo podatki. Pomnilniški predpomnilniki se uporabljajo za shranjevanje kopij določenih podatkov iz glavnega pomnilnika. CPU dostopa do teh informacij, shranjenih v predpomnilniku, kar pomaga pospešiti čas obdelave.

Ko fizičnemu pomnilniku ali RAM-u zmanjka pomnilniškega prostora, računalnik samodejno uporabi navidezni pomnilnik s trdega diska za zagon zahtevanega programa. Enota za upravljanje pomnilnika dodeljuje pomnilnik iz operacijskega sistema različnim aplikacijam. Navidezno naslovno območje, ki se nahaja znotraj centralne procesne enote, je sestavljeno iz niza naslovov, ki so razdeljeni na strani. Strani so sekundarni bloki za shranjevanje, ki so enaki po velikosti. Samodejni proces ostranjevanja omogoča operacijskemu sistemu, da izkoristi prostor za shranjevanje, razpršen na trdem disku.

Namesto da bi uporabnik prejel sporočilo o napaki, da ni dovolj pomnilnika, MMU samodejno naroči sistemu, naj zgradi dovolj navideznega pomnilnika za izvajanje aplikacije. Sosednji prostor navideznega pomnilnika je ustvarjen iz skupine enako velikih blokov navideznega pomnilnika za izvajanje aplikacije. Ta funkcija je glavni ključ za učinkovito in učinkovito delovanje tega procesa, saj sistemu ni treba ustvariti enega kosa navideznega pomnilnika za obvladovanje programskih zahtev. Ustvarjanje različnih velikosti pomnilniškega prostora za namestitev programov različnih velikosti povzroča težavo, znano kot razdrobljenost. To bi lahko privedlo do možnosti, da ne boste imeli dovolj prostega prostora za večje programe, ko je skupni razpoložljivi prostor dejansko dovolj.

Upravljanje pomnilnika aplikacij vključuje postopek dodeljevanja pomnilnika, potrebnega za zagon programa, iz razpoložljivih pomnilniških virov. V večjih operacijskih sistemih se lahko izvaja veliko kopij iste aplikacije. Enota za upravljanje pomnilnika pogosto dodeli aplikaciji naslov pomnilnika, ki najbolje ustreza njenim potrebam. Tem programom je lažje dodeliti iste naslove. Prav tako lahko enota za upravljanje pomnilnika po potrebi razdeli pomnilniške vire programom. Ko je operacija končana, se pomnilnik reciklira za uporabo drugje.
Eden od glavnih izzivov za enoto za upravljanje pomnilnika je zaznati, kdaj podatki niso več potrebni in jih je mogoče zavreči. To sprosti pomnilnik za uporabo v drugih procesih. Samodejno in ročno upravljanje pomnilnika je zaradi tega vprašanja postalo ločeno področje študija. Neučinkovito upravljanje pomnilnika predstavlja veliko težavo, ko gre za optimalno delovanje računalniških sistemov.