Forskel mellem virtuel og cache-hukommelse

I computerenes verden sætter hukommelsen den grænse, som vi baserer os på, hvis vi kan køre dette program eller ej. Hvis du var uheldig nok med at have oplevet DOS, kender du bane for hukommelsesgrænsen på 640k. I dag ser hukommelsen ud til at være næsten uendelig, og ingen får faktisk de "ikke nok hukommelse" -meddelelser fra det sidste år. Hvordan opnåede de det?

Svaret på det er en meget smart hukommelsesprocedure. Ved at placere nogle dele, der skal være i hukommelsen på din harddisk, kan de udvide computerens hukommelseskapacitet langt ud over, hvad der er installeret; dette kaldes virtuel hukommelse. Så lad os sige, at din computer kun har 1 GB hukommelse, og at du starter et par programmer, hvis samlede hukommelsesforbrug er omkring 1,5 GB. Uden virtuel hukommelse har du ikke lov til at gøre det. Men med virtuel hukommelse tildeler operativsystemet en del af harddisken som en del af hukommelsen og holder dataene der. Så i ovenstående eksempel skal vi sige, at den virtuelle hukommelse også er 1 GB. 1 GB faktisk hukommelse + 1 GB virtuel hukommelse = 2 GB systemhukommelse. På den måde, selvom din hukommelse er begrænset, kan du stadig bruge hukommelses omfattende applikationer.

Der er dog en ulempe ved virtuel hukommelse. Læsning af data fra en harddisk er væsentligt langsommere end læsning fra hukommelsen. Så jo flere oplysninger, der er gemt på din harddisk, jo langsommere bliver dit system, så det virker træg.

Cachehukommelse på den anden side udvider ikke den mængde hukommelse, du har, den reducerer blot den tid, der kræves til at få adgang til data. Så du kan forstå konceptet let, lad os sige, at processoren er en studerende, der udfører en rapport. Hver gang han har brug for data, går han til boghylden (boghylden er hukommelsen, og bøgerne er dataene) og tager en bog ud og bringer den tilbage til sin stol. Han læser den, så returnerer han den til bøgerhylden, før han fortsætter med sin rapport. Hvis du var studerende, ville det virkelig være tidskrævende, hvis du skal rejse dig og få en bog hver gang du har brug for et stykke data. Praktisk set ville en studerende hente et par bøger fra boghylden og lægge dem på bordet. Så hvis han har brug for oplysninger, der er i bogen, som han for nylig har brugt, er det bare inden for rækkevidde af arme, og han behøver ikke at stå og gå for at få det.

I denne metafor er tabellen vores cachehukommelse. Hver gang processoren bruger data, lægger de de nyeste data, den brugte, i cachehukommelsen til hurtig adgang, hvis det er nødvendigt igen. Cachehukommelse er dog meget begrænset, ligesom en tabel med begrænset plads, så data, der ikke blev åbnet længst, vender tilbage til hukommelsen for at frigøre cachen til nyere data.

Lær mere om cache og virtuel hukommelse.