Virtualioji atmintis
Išvaizda
(Nukreipta iš puslapio Virtuali atmintis)
Šiam straipsniui ar jo daliai trūksta išnašų į patikimus šaltinius. Jūs galite padėti Vikipedijai pridėdami tinkamas išnašas su šaltiniais. |
Virtualioji atmintis (angl. virtual memory) – tai šiuolaikiniuose kompiuteriuose populiarus pagrindės atminties padidinimo būdas: operatyvioji atmintis ir dalis išorinės atminties (swap sritis) naudojama kaip viena sistema. Šiuo atveju duomenys, esantys operatyviojoje atmintyje gali būti kuriam laikui išsaugomi išoriniame įrenginyje tam, kad efektyviau būtų panaudota turima fizinė atmintis. Vėliau, esant reikalui, duomenys iš išorinio įrenginio perkeliami atgal į operatyviąją atmintį. (Linux operacinėje sistemoje tam dažnai naudojami netgi atskiri disko skirsniai, kuriuos galima sistemai dirbant įjungti ir išjungti tam skirtomis komandomis). Valdydamos atmintį, operacinės sistemos naudoja šiuos metodus:
- Swapping
- į išorinį įrenginį perkeliama tam tikra, logines ribas turinti atminties zona, pvz., procesas ar jo loginė dalis (pvz., funkcija). Toks metodas dažniau naudojamas primityviose OS, pvz., DOS arba realizuojamas paskirose programose. Gana panašiai veikia dinaminės bibliotekos, kurios į atmintį įrašomos tik tam laikui, kol naudojamos.
- Puslapiavimas (paging)
- atmintis sudalijama nedideliais vienodo dydžio puslapiais. Toks metodas leidžia paprasčiau organizuoti procesų valdymą, supaprastina operacinės sistemos atliekamą atminties tvarkymą, pavyzdžiui, loginio atminties adreso perskaičiavimą į fizinį. Šis metodas gali reikalauti specifinių, atminties kontrolę palaikančių procesorių.
Ankstesniais laikais buvo naudojamas panašus atminties valdymo būdas – segmentavimas. Nuo puslapiavimo jis skiriasi tuo, kad atmintis sudalijama į sąlyginai didelius atminties blokus (nebūtinai vienodo dydžio), ir viename segmente gali būti ne daugiau nei vienas procesas, o pačių procesų paskirstymas daugiau nei viename segmente problematiškas. Šiuo atveju supaprastinamas atminties valdymas, tačiau atmintis išnaudojama neefektyviai.
Šiame straipsnyje naudojami diskutuotini terminai. Daugiau apie kompiuterinius terminus skaitykite žodynėlyje. |