Forskel mellem cachehukommelse og virtuel hukommelse

Cachehukommelse vs virtuel hukommelse
 

Forskellen mellem cachehukommelse og virtuel hukommelse findes i det formål, som disse to bruges til, og i den fysiske eksistens. Cachehukommelse er en type hukommelse, der bruges til at forbedre adgangstiden til hovedhukommelsen. Den befinder sig mellem CPU'en og hovedhukommelsen, og der kan være flere niveauer af cacher, såsom L1, L2 og L3. Den type hardware, der bruges til cachehukommelse, er meget dyrere end RAM (Random Access Memory), der bruges til hovedhukommelse, fordi cachehukommelsen er meget hurtigere. Af denne grund er kapaciteten i cachehukommelsen meget lille. Virtuel hukommelse er en hukommelsestyringsteknik, der bruges til effektivt at bruge RAM (hovedhukommelse), samtidig med at der tilvejebringes en separat hukommelsesplads til hvert program, der er endnu større end den faktiske fysiske RAM (hovedhukommelse) kapacitet. Her bruges harddisken til at udvide hukommelsen. Elementerne i den fysiske RAM overføres frem og tilbage med harddisken.

Hvad er cachehukommelse?

Cachehukommelse er en type hukommelse der ligger mellem CPU'en (Central Processing Unit) og RAM (Random Access-hukommelse). Formålet med cachehukommelse er at reducere CPU'ets hukommelsesadgangstid fra RAM. Cachehukommelsen er meget hurtigere end RAM. Så adgangstiden i cachen er meget mindre end adgangstiden på RAM. Men udgifterne til hukommelse, der bruges til cachehukommelse, er meget højere end omkostningen til hukommelse, der bruges til RAM, og kapaciteten til cachehukommelsen er derfor meget lille. Den hukommelsestype, der bruges til cachehukommelse, kaldes SRAM (Static Random Access Memory).

Hver gang CPU'en ønsker at få adgang til hukommelse, kontrollerer den først, om det, den har brug, findes i cachehukommelsen. Hvis ja, ville det være i stand til at få adgang til det med mindst mulig forsinkelse. Hvis den ikke ligger i cachen, kopieres det ønskede indhold fra RAM til cachen, og kun CPU'en får adgang til det fra cachen. Når du kopierer indhold fra cachen her, kopieres ikke kun indholdet i den ønskede hukommelsesadresse, men også det nærliggende indhold til cachen. Så næste gang er der stor sandsynlighed for, at et cache-hit forekommer, da de fleste computerprogrammer får adgang til data i nærheden eller sidst har adgang til data de fleste gange. Så på grund af cachen reduceres den gennemsnitlige hukommelseslatens.

I CPU er der tre typer cacher: Instruktionscache at gemme programinstruktioner, Datacache til at gemme dataelementer og Oversættelse Look-side Buffer til at gemme hukommelseskortlægninger. For datacache er der generelt cache på flere niveauer. Det vil sige, at der er flere cacher som L1, L2 og L3. L1-cache er den hurtigste, men mindste cachehukommelse, der er tættest på CPU'en. L2-cache er langsommere end L1, men større end L1 og ligger efter L1-cachen. På grund af dette hierarki kan der opnås en bedre gennemsnitlig hukommelsesadgangstid til en mindre pris.

Hvad er virtuel hukommelse?

Virtuel hukommelse er en hukommelsestyringsteknik bruges i computersystemer. Der er ingen hardware, der kaldes virtuel hukommelse, men det er et koncept, der bruger RAM og harddisken til at give et virtuelt adresserum til programmer. Første RAM er opdelt i bunker, der kaldes sider, og de identificeres ved fysiske hukommelsesadresser. På harddisken er der reserveret en særlig del, hvor det i Linux kaldes swap, og i Windows kaldes det en sidefil. Når et program startes, får det et virtuelt adresserum, der kan være endnu større end den faktiske fysiske hukommelse. Virtuel hukommelse er også opdelt i bunker, der kaldes sider, og hver af denne virtuelle hukommelsesside kan kortlægges til en fysisk side. Tabellen kaldet sidetabel holder styr på denne kortlægning. Når den fysiske hukommelse løber tør for plads, hvad der gøres, skubbes visse fysiske sider til den specielle del på harddisken. Når der er brug for en side, der skubbes til harddisken igen, bringes den til den fysiske hukommelse ved at placere en anden valgt side fra den fysiske hukommelse til harddisken.

Hvad er forskellen mellem cachehukommelse og virtuel hukommelse?

• Cachehukommelse er en type hukommelse, der bruges til at forbedre hukommelsestilgangstiden. Det er en hurtigere type hukommelse, der er mellem CPU og RAM for at reducere den gennemsnitlige hukommelsesadgangstid. Virtuel hukommelse er en hukommelsesstyringsmetode, hvor det er et koncept, der lader programmer få sin egen virtuelle hukommelsesplads, som er endnu større end den rigtige fysiske RAM.

• Cachehukommelse er en type hardwarehukommelse, der faktisk findes fysisk. På den anden side er der ingen hardware kaldet virtuel hukommelse, da det er et koncept, der bruger RAM, harddisk, hukommelsesstyringsenhed og software til at tilvejebringe en virtuel type hukommelse.

• Cachehukommelsesadministration udføres fuldt ud af hardware. Den virtuelle hukommelse styres af operativsystemet (software).

• Cachehukommelsen ligger mellem RAM og processoren. Dataoverførsler involverer RAM, cachehukommelse og processoren. Virtuel hukommelse involverer på den anden side overførsel af data mellem RAM og harddisk.

• Cache-hukommelser tager små størrelser, såsom kilobyter og megabyte. Virtuel hukommelse involverer på den anden side enorme størrelser, der tager gigabyte.

• Virtuel hukommelse involverer datastrukturer såsom sidetabeller, der gemmer kortlægning mellem fysisk hukommelse og virtuel hukommelse. Men denne type datastrukturer er ikke nødvendig for cachehukommelse.

Resumé:

Cachehukommelse vs virtuel hukommelse

Cachehukommelse bruges til at forbedre hukommelsestilgangstiden, mens virtuel hukommelse er en hukommelsesstyringsmetode. Cachehukommelse er en faktisk hardware, men der er ingen hardware kaldet virtuel hukommelse. RAM, harddisk og forskellige andre hardware sammen med operativsystemet producerer konceptet kaldet virtuel hukommelse til at give store og isolerede virtuelle hukommelsesrum til hvert program. Indholdet i cachehukommelsen styres af hardware, mens indholdet i den virtuelle hukommelse styres af operativsystemet.

Billeder høflighed:

  1. Cache-hukommelsesproces af Hellisp (CC BY-SA 3.0)
  2. Virtuel hukommelse af Ehamberg (CC BY-SA 3.0)