Computing / Kunnskapsquiz

RAM, lagring og minnehierarkiet

Moderne datamaskiner balanserer fart og kapasitet gjennom et lagdelt minnesystem. Forståelsen av hvordan data beveger seg mellom prosessor og lagring forklarer hvorfor maskinen oppfører seg som den gjør.

10 questionsSvar og resultat til slutt
Practice quiz

Test kunnskapen din.

Spørsmål 1 av 100 besvart

Vi regner sammen svarene dine

Resultatet ditt kommer straks.

Spørsmål 1

Hva er hovedårsaken til den såkalte minneveggen?

Ingeniører økte prosessorhastigheten ved å krympe transistorene og heve klokkehastigheten, men RAM-teknologien prioriterte tetthet og kapasitet fremfor hastighet, noe som skapte en betydelig latensgap.

Kildeutdrag
However, the technology inside RAM focused more on storing more data rather than delivering it faster.

Fra teksten i Knowverse-kurset.

Spørsmål 2

Hvorfor trenger DRAM konstante oppfriskningssykluser?

DRAM-celler lagrer data som en elektrisk ladning i små kondensatorer. Fordi disse komponentene oppfører seg som små, lekkasjeutsatte batterier, må minnekontrolleren konstant oppfriske dem for å unngå datatap.

Kildeutdrag
Because capacitors are essentially tiny batteries, they naturally leak electricity over time, causing the stored data to fade away.

Fra teksten i Knowverse-kurset.

Spørsmål 3

Hva er den viktigste fysiske forskjellen mellom SRAM og DRAM?

Mens en DRAM-celle bare trenger én transistor og én kondensator, krever en enkelt SRAM-celle typisk seks transistorer, noe som gjør den mye større og dyrere å produsere.

Kildeutdrag
However, while a DRAM cell needs only one transistor and one capacitor, a single SRAM cell usually requires six transistors.

Fra teksten i Knowverse-kurset.

Spørsmål 4

Hva beskriver tidsmessig lokalitet i dataprogrammer?

Tidsubundet lokalitet refererer til at et program gjentatte ganger får tilgang til den samme variabelen eller instruksjonen i løpet av en kort periode, noe som gjør det effektivt å holde disse dataene nær CPU.

Kildeutdrag
The first pattern we see here is Temporal Locality, which describes the tendency to reuse the same data multiple times in a short window of time.

Fra teksten i Knowverse-kurset.

Spørsmål 5

Hva skjer når det oppstår en cachenomiss (cache miss)?

Når etterspurte data mangler i cachen, oppstår en cache-miss. Systemet må hente dem fra den tregere hoved-RAM, noe som gir en tidsstraff.

Kildeutdrag
However, if the requested data is not in the cache, the result is a Cache Miss.

Fra teksten i Knowverse-kurset.

Spørsmål 6

Hva er oppgaven til minnehåndteringen (MMU)?

MMU er en dedikert maskinvarekomponent inne i CPU som umiddelbart omsetter virtuelle adresser brukt av programvare til faktiske fysiske plasseringer i RAM.

Kildeutdrag
Since the CPU works with virtual addresses, but the data lives in physical RAM, we need a translator: the Memory Management Unit.

Fra teksten i Knowverse-kurset.

Spørsmål 7

Hva betyr thrashing i et datasystem?

Når for mange programmer kjører samtidig, bruker systemet all sin tid på å veksle data mellom RAM og lagring i stedet for å utføre programvareinstruksjoner.

Kildeutdrag
If you have too many programs open, the system might get stuck in a loop of constantly moving data in and out of RAM.

Fra teksten i Knowverse-kurset.

Spørsmål 8

Hva er hovedformålet med ROM i en datamaskin?

ROM er ikke-flyktig, noe som betyr at dataene forblir intakte når strømmen er av. Den inneholder den essensielle fastvaren som trengs for å vekke systemet og laste inn operativsystemet.

Kildeutdrag
To solve this, computers use Read-Only Memory, or ROM, which holds the essential code needed to wake the system up.

Fra teksten i Knowverse-kurset.

Spørsmål 9

Hva bidrar L3-cachen med i en moderne prosessor?

L3-cache er større og tregere enn L1 eller L2, men den deles på tvers av prosessorkjerner for å redusere hyppigheten av trege turer til hoved-RAM.

Kildeutdrag
While L3 is slower than L1 and L2, it acts as a massive reservoir that prevents the cores from having to talk to the much slower RAM.

Fra teksten i Knowverse-kurset.

Spørsmål 10

Hvorfor er sider i virtuelt minne vanligvis satt til 4 kilobyte?

For å håndtere det virtuelle rommet effektivt deles minnet opp i fastsatte biter som kalles sider, der 4KB er standardoverføringsenheten definert av maskinvarearkitekturen.

Kildeutdrag
A Page is a fixed-size block of virtual memory, usually 4 kilobytes (4KB) in size, which acts as the basic unit of transfer.

Fra teksten i Knowverse-kurset.

DIN SCOREriktige svar
Quizen er ferdig

Slik gikk det.

Under ser du svaret og forklaringen til hvert spørsmål.

Knowverse app icon
KNOWVERSE FOR IPHONE

Last ned Knowverse-appen.

Finn flere quizer og hele kurs i den gratis iOS-appen (på engelsk).

Last ned KnowverseLast ned for iOS

Raskt, lite og dyrt

Inne i en moderne datamaskin utfører prosessoren milliarder av operasjoner i sekundet. Likevel venter den ofte i hundrevis av klokkesykluser på at data skal dukke opp fra hovedminnet. Denne forsinkelsen kalles ventetid, og skaper en stor flaskehals kjent som minneveggen.

For å motvirke denne hastighetsforskjellen plasserer ingeniører et lite, lynraskt minne kalt cache direkte i eller ved siden av prosessoren. Fordi cachen bruker statisk RAM, gir den tilgang på et blunk, men koster langt mer per bit enn standard RAM.

Prosessorer lener seg på disse små minnebufferne for å unngå å stoppe opp mens de venter på elektriske signaler. Siden statisk minne krever seks transistorer per bit, forblir det for dyrt og fysisk stort til å erstatte hovedminnet fullstendig på hovedkortet.

Kildeutdrag
To solve this, engineers place a small, high-speed memory called a Cache directly between the CPU and the main RAM.

Fra teksten i Knowverse-kurset.

Modern Memory — image from Wikimedia Commons
Random Access Memory HyperX · Zsinytwiki · CC0

Tregt, stort og billig

Minnebrikkene som plugges inn i et hovedkort består av dynamisk RAM. DRAM lagrer biter som elektrisk ladning i bittesmå kondensatorer som lekker over tid, noe som krever konstante oppfriskningssykluser fra minnekontrollen.

Denne konstante trengselen for fornyelse skaper forsinkelser, men kondensatorene er små nok til at man kan få plass til gigabiter med rimelig minne på en enkelt brikke. Den fysiske utformingen prioriterer tetthet framfor rå hastighet for å holde kostnadene nede.

Når det fysiske minnet fylles opp av åpne programmer, bruker operativsystemet lagringsdisker som midlertidig avlastningsplass. Å flytte data frem og tilbake mellom raskt minne og tregere disker skaper et betydelig hastighetstap som kalles swapping.

Kildeutdrag
The sticks of memory you plug into a motherboard are made of DRAM, or Dynamic Random Access Memory.

Fra teksten i Knowverse-kurset.

Lokalitet og virtuelt minne

Programmer henter ofte data og instruksjoner som ligger i nærheten av hverandre gjentatte ganger, fremfor å hoppe vilkårlig rundt i minneadresser. Denne forutsigbare oppførselen kalles lokalitetsprinsippet, og lar maskinvaren forutsi hva prosessoren trenger i neste omgang.

Når applikasjoner krever mer plass enn det fysiske minnet har å by på, setter operativsystemet opp et større, privat arbeidsområde gjennom virtuelt minne. Minnehåndteringen oversetter virtuelle adresser til fysiske for å holde alt flytende.

Hvis for mange programmer kjører samtidig, blir systemet hengende i en loop der data flyttes ut og inn av minnet i en tilstand som kalles thrashing. God håndtering av disse lagene sørger for at prosessoren får data effektivt til tross for fysiske begrensninger.

Kildeutdrag
This predictable behavior is known as the Locality Principle, and it is the secret reason why modern computers feel fast.

Fra teksten i Knowverse-kurset.

Kilder

Kilder: Memory and Storage Hierarchies. Hvert spørsmål eller steg har et utdrag fra kurset.