Virtuala memoro

El Vikipedio, la libera enciklopedio
La programo pensas ke ĝi havas grandan kvanton da apudaj adresoj; tamen en la realo la partoj kiujn ĝi uzas estas diserigitaj en la ĉefmemoron, kaj la neaktivaj partoj estas savitaj en diskan dosieron.

Virtuala memoro estas la nomo de teknologio uzata en komputiloj. Komputiloj funkciigas programon. Tiu programo bezonos komputilan memoron por funkcii, kaj efektivigi kion ĝi bezonas fari. Plej multaj komputiloj uzataj hodiaŭ povas fari pli ol unu agon samtempe, ili funkciigas pli ol unu programaro. Tio estas konata kiel plurtaska sistemo.

En tiu kazo, ĉiuj programoj aŭ programaroj kiuj funkcias samtempe en la komputilo partigas ties rimedojn. Komputilo ne havas pli da procesoroj aŭ da ĉefmemoro nur tial ke pli multe da programoj funkcias en ĝi.

Virtuala memoro estas la ideo, ke la programaro vidas blokon de memoro de difinita grando. La programaro povas uzi tiun memoron kiam ĝi vidas, ke ĝi taŭgas. Tiu bloko de memoro estas virtuala en la senco, ke ĝi devenas de malsamaj lokoj. Iuj povas esti en la ĉefmemoro de la komputilo, sed iuj ankaŭ povas esti sur la disko. La procesoro havas specialan eron, nomitan Aritmetika kaj logika unuo, kiu faras kelkajn el la transiroj inter programara memoro kaj sistem-rimedoj. Modernaj operaciumoj ankaŭ faras parton de la laboro.

Kiam programo provas aliri al bloko de memoro kiu ne estas en la memoro de la sistemo, tiu programo estas haltigata, kaj la memor-bloko estas alŝutata en la sistem-memoron. Kio estis en tiu parto de la memor-sistemo estas skribata sur la diskon. Tio estas kutime nomita paĝado.

Kelkaj komputilaj sistemoj, kiel la enkonstruitaj sistemoj, ne uzas virtualan memoron, ĉar ili bezonas tre rapidan respond-tempon, aŭ iun, kiu restas ĉiam la sama. Unu el la problemoj kun virtuala memoro estas ke malfacilas prognozi respond-tempon. Programaro kiu uzas parton de memoro kiu bezonas esti elŝutota el disko, havos malsaman respond-tempon ol alia kiu ne bezonas tion.